Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
C# / VB.NET - [VB.NET] stampare un file da una OpenDialog
Forum - C# / VB.NET - [VB.NET] stampare un file da una OpenDialog - Pagina 2

Pagine: [ 1 2 ] Precedente | Prossimo
Avatar
wuolfit (Normal User)
Pro


Messaggi: 100
Iscritto: 19/07/2011

Segnala al moderatore
Postato alle 16:46
Giovedì, 08/09/2011
Grazie mille ho capito ..... ho un ultima domanda io avrei la necessità che la mia stampa non venga fatta dalla stampante predefinita ma da una che scelgo io di cui conosco il nome è possibile far si che le 4 righe che tu hai scritto, facendo le dovute modifiche mi stampino su la stampante che gli indico io e non quella di default? Altrimenti se scegliessi di usare PrintDocument qual'è il parametro che gli dovrei passare per dirgli "stampami questo file"? Grazie mille

PM Quote
Avatar
Il Totem (Admin)
Guru^2


Messaggi: 3635
Iscritto: 24/01/2006

Segnala al moderatore
Postato alle 11:16
Venerdì, 09/09/2011
Per l'ennesima volta, devi lasciar fare al programma delegato. Lui deciderà se mostrare il dialog di scelta della stampante.
Guarda qui per l'altro metodo:
http://totemslair.org/guide/viewchapter.php?guida=vb&id=98

PM Quote
Avatar
wuolfit (Normal User)
Pro


Messaggi: 100
Iscritto: 19/07/2011

Segnala al moderatore
Postato alle 14:05
Venerdì, 09/09/2011
Scusa Totem hai ragione mi sono espresso male, quello che intendevo dire quando ti ho detto che mi serviva stampare da una stampante diversa da quella predefinita non intendevo dire che mi deve aprire il print dialog per farmi scegliere la stampante su cui mandare il documento in stampa, ma a me serve che passandogli il nome della stampante da sorgente, cosa che con PrintDocument1 posso fare tranquillamente con il comando :

Codice sorgente - presumibilmente Plain Text

  1. PrintDocument1.PrinterSettings.PrinterName = "nomestampante"



lui stampi il file sulla stampante che ho definito io programmatore in fase di sviluppo, senza far selezionare all'utente alcun che e mantenendo invariata la periferica di default.
Ora ho due problemi che ti espongo di seguito :

1) se decido di usare PrintDocument1 come faccio a dire al programma stampami il file che l'utente ha selezionato dalla OpenFileDialog senza usare la PrintDialog?

2) se invece decido di usare il metodo creato da te posso dirgli non usare la stampante predefinita, ma questa che ti dico io come con PrintDocument1?

Grazie mille

PM Quote
Avatar
Il Totem (Admin)
Guru^2


Messaggi: 3635
Iscritto: 24/01/2006

Segnala al moderatore
Postato alle 12:08
Sabato, 10/09/2011
1) Semplicemente, non usi la printdialog...
2) No. Non puoi dire nulla al programma. Nulla. Niente. Nichts. Nisba. Nada.

PM Quote
Avatar
wuolfit (Normal User)
Pro


Messaggi: 100
Iscritto: 19/07/2011

Segnala al moderatore
Postato alle 10:21
Mercoledì, 14/09/2011
Quindi Totem fammi capire bene, in visual basic net hanno tolto delle funzioni che erano presenti in vb6 ????? Quindi avrebbero limitato l'utente invece di migliorare ed aggiungere nuove funzioni ????
Affermo questo perché se io provo a fare ciò che ti ho chiesto in vb6 il sorgente del bottone che mi fa la stampa di un file usando la stampante che gli indico io senza usare la print dialog e senza cambiare la stampante di default sarebbe il seguente :

Codice sorgente - presumibilmente VB.NET

  1. Private Sub btnStampa_Click()
  2.     Dim objPrinter As Printer
  3.     Dim TempPrinter As Printer
  4.     Dim imgStampa As StdPicture
  5.     Set imgStampa = LoadPicture("c:\miaimmagine.jpg")
  6.     For Each objPrinter In Printers
  7.         If objPrinter.DeviceName = "nomestampante" Then
  8.             Set TempPrinter = objPrinter
  9.             Exit For
  10.         End If
  11.     Next
  12.     If Not TempPrinter Is Nothing Then
  13.         Set Printer = TempPrinter
  14.     End If
  15.     Printer.PaintPicture imgStampa, 0, 0, 12300, 17200
  16.     Printer.EndDoc
  17. End Sub



ovviamente in questo caso voglio stampare un immagine, ma se volessi stampare un qualsiasi altro file con qualche piccola modifica il risultato rimarrebbe identico, cioé premendo il bottone stampa senza aprire programmi esterni e senza scegliere la stampante il file viene stampato proprio nella stampante che voglio io (scusate il giro di parole e le ripetizioni), c'è da dire anche che l'ho provato facendo selezionare all'utente un file (quindi non potevo mettere path e nome del file da codice visto che non li conoscevo) ebbene anche passando path e nome file con una variabile di tipo stringa in vb6 riesco a fare ciò che volevo, quindi ti ripongo la domanda che forse ho scritto in una maniera non chiara....come faccio a dire a PrintDocument1 stampami il file che l'utente ha selezionato dalla OpenFileDialog? Grazie

PM Quote
Avatar
Il Totem (Admin)
Guru^2


Messaggi: 3635
Iscritto: 24/01/2006

Segnala al moderatore
Postato alle 11:40
Mercoledì, 14/09/2011
VB.NET non è la continuazione di VB6, non è un suo successore. E' un linguaggio nuovo che da VB6 eredita solo la sintassi. Nessuna funzionalità è stata tolta o aggiunta, migliorata o limitata. Il modo di affrontare i problemi è diverso, quindi anche le soluzioni cambiano.

Puoi andare avanti all'infinito a fare quella domanda e io ti darò sempre la medesima risposta. Piuttosto che continuare a sbattere la testa contro il muro, perché non decidi di girargli attorno? Leggi i link che ti ho dato. Le soluzioni ci sono, ma se non guardi più in là del tuo naso non riuscirai a vederle.

PM Quote
Pagine: [ 1 2 ] Precedente | Prossimo