Ariciao a tutti.
Vorrei stampare solo una riga e quando do il printer.enddoc non mi deve fare il salto pagina.
C'è qualche soluzione.......
PS
maledetto enddoc
Ariciao a tutti.
Vorrei stampare solo una riga e quando do il printer.enddoc non mi deve fare il salto pagina.
C'è qualche soluzione.......
PS
maledetto enddoc
Perchè maledetto End Doc ? se non ci fosse non stamperesti nulla.Originariamente Scritto da ato
Prova a postare un pò di codice che vediamo.
Tu vorresti che dopo aver stampato la riga, non fuoriuscisse il foglio ?
Ciao
Mi sento un'illusione in un mondo immaginario
che codice vuoi che ti posto!?
printer.print "Ciao"
printer.enddoc
ed ecco che avviene il salto pagina.
Invece io voglio che : stampi e rimanga li...la testina...insomma non voglio il salto pagina...con l'enddoc, esiste un metodo ?????????
PROVA COME NELL'ESEMPIO
DI Diego Bovenzi
CIAO
VB: Stampa righe in VB
Diego Bovenzi (yandiego@libero.it)
L'oggetto Printer del VB consente di "comunicare" con una stampante di sistema, ma non di stampare una riga e attendere, senza espellere il foglio, l'arrivo di una nuova riga, dopo un tempo imprecisato dalla precedente, per poi stamparla subito di seguito. Un sistema per fare ciò, è accedere alla stampante aprendola come se fosse un file, e di "inviare" i dati utilizzando i comandi normalmente usati per la gestione dei file.
Private Sub Command1_Click()
Dim mystring As String
mystring = Text1.Text
Open "lpt1:" For Binary As #2
Put #2, , mystring
'ritorno carrello
Put #2, , Chr$(13)
'… e avanzamento riga
Put #2, , Chr$(10)
Close #2
End Sub
Private Sub Command2_Click()
Text1.SetFocus
Text1.Text = ""
End Sub
Private Sub Command3_Click()
Printer.Print ""
Printer.Print "Fine Documento"
Printer.EndDoc
End
End Sub
Ok Ato, il problema è chiaro.Originariamente Scritto da ato
Vedo che Mandrake ti ha postato un codice, prova quello.
Ciao
Mi sento un'illusione in un mondo immaginario
si in effetti è quello che già ho fatto....solo che io stampo su una stampante di rete....e quindi non è collegata alla mia "lpt1"....ok?
allora poco male...gli lancio un bel "net use lpt1 : \\nomecomputer\nomestampante" (con s.o. "win xp" perche con "win98 c'era l'opzione connetti come") e reindirizzo l'output sulla stampante come se fosse un file....però se il "net use" non va a buon fine io non me ne accorgo perchè io lo lancio con "a=shell("net use...bla bla")" e questo non mi ritorna nessun messaggio d'errore in "a" ...cioè la variabile "a" è sempre diversa da zero quindi io non me ne accorgo....ed il programma si alluppa si blocca e ci mette una vita prima di dirmi che non riesce a stampare......
su vbitalia ho visto delle api "createfile" etc....ma anche questa ci mette moltissimo tempo prima di dirmi se va tutto bene.
esiste un metodo per controllare se una lpt è pronta per l'uso e che me lo dica subito???
Bè certo questa è un'altra storia !!!!!
si scusami.
In effetti tutta questa storia mi ha portato alla conclusione di non voler utilizzare il metodo del file...e quindi di ritornare all'oggetto printer....ma c'è quel problema del salto pagina con il printer.enddoc.
Se si potesse eliminare...sto salto pagina...insomma sarebbe bello farla uscire (la pagina) quando dico io ...che ne so con un printer.newpage....muà
se sai qualcosa....dimmelo...anche sul fatto di leggere la lpt subito senza aspettare una vita prima che mi ritorni un messaggio d'errore.
Cmq ti ringrazio tantissimo...granzie anche a te rocky.
Ciao
P.S:
spero che mi possiate aiutare.
Salve ho letto i vostri aiuti ma inserendo questo codice nel mio programma il problema rimane cioè la stampante continua a espellere il foglio una volta stampata la riga... altre soluzioni? grazie tante
Per vedere se il codice funziona
occorre :
1) aprire un nuovo progetto in visual basic
2) nel form inserire 3 bottoni e un textbox
e infine verificare il funzionamento.
Se funziona occorre rivedere l'integrazione nel tuo progetto
ciao
grazie per la risposta celere ma è una cosa che ho già fatto ma il codice nn funziona!!!!!
Segnalibri