Gambas-it

Gambas3 => Programmazione => Topic aperto da: aulin - 14 Settembre 2010, 17:55:34

Titolo: Stampa con versione 2.99
Inserito da: aulin - 14 Settembre 2010, 17:55:34
Ho provato a stampare con questa versione ma mi sono subito stoppato. L'istruzione :
Codice: [Seleziona]

public stampante as new printer

stampante.configure     ' per scegliere la stampante
stampante.name           ' il nome è corretto
Paint.Begin(stampante)                                       

mi evidenzia l'errore : printer is not printing.
Qualcuno ne sa qualcosa ?
Titolo: Re: Stampa con versione 2.99
Inserito da: fsurfing - 14 Settembre 2010, 21:25:48
anche io ho avuto lo stesso problema , sembrerebbe che non sia ancora implementato l' oggetto printer... anche nella guida in linea manca l' argomento..
Titolo: Re: Stampa con versione 2.99
Inserito da: milio - 17 Settembre 2010, 00:35:45
Ho avuto anche io quel tipo di problema... finché ho trovato la soluzione ;)

Se guardi nella toolbox di gambas nella sezione Special, vedrai che si puo' utilizzare l'oggetto Printer.
Allora al quel inserendolo nel form che richiama la stampa, avrai un oggetto Printer1 e...

  Me.Printer1.Configure()
  Me.Printer1.Print()

Poi nell'evento Printer1_Begin() metterai il codice per 'scrivere' sulla stampa.
Titolo: Re: Stampa con versione 2.99
Inserito da: md9327 - 17 Settembre 2010, 10:23:17
Bravo Milio, sei la nostra pietra "miliare" per passare alla 3....

Avere l'oggetto Printer come un componente grafico è molto simpatico e utile (come il timer...).
Titolo: Re: Stampa con versione 2.99
Inserito da: aulin - 18 Settembre 2010, 23:59:19
Non ho ancora chiuso la discussione perchè non riesco ancora a far funzionare la stampante.
Sistemao ticamente mi tira fuori un foglio miseramente bianco.
Allego un banale sorgente non funzionante.

Codice: [Seleziona]

Public Sub BTN_Chiudi_Click()
  Me.Close
End

Public Sub Form_Open()
End

Public Sub BTN_Stampa_Click()
Me.Printer1.Configure
 Me.printer1.Print

'  Printer1_Begin()
'  Printer1_Draw()
'  Printer1_End()
 
End

Public Sub Printer1_Begin()
End

Public Sub Printer1_End()
End

Public Sub Printer1_Draw()
Dim Messaggio As String
  Messaggio = "Res: " & Str(printer1.Resolution) & ", Width: " & Str(printer1.PaperWidth) & ", Height: " & Str(printer1.PaperHeight) 
   message.Info(Messaggio)                       
  Paint.Font.Name = "Sans"
  Paint.Font.Size = 90
  Paint.Font.Bold = True
  Paint.MoveTo(10, 135)
  Paint.Text("Hello kdjgh gkjh kghdf kgjh kgh kjgh kjh kh k kh khkh")
Paint.End
End
Titolo: Re: Stampa con versione 2.99
Inserito da: vuott - 03 Gennaio 2012, 05:49:31
Io sono riuscito a stampare con Printer nel modo che puoi vedere qui:

http://www.gambas-it.org/smf/index.php?topic=1553.msg21799#msg21799
Titolo: Re: Stampa con versione 2.99
Inserito da: andy60 - 03 Gennaio 2012, 08:51:21
Buongiorno, io con G3 la stampa la risolvo utilizzando il componente pdfreport, dato che le stampe di cui faccio uso sono sempre dello stesso tipo, prelevano dati da tabbelle sqlite. Cmq buono a sapersi che esiste un oggetto printer.
Titolo: Re: Stampa con versione 2.99
Inserito da: andy60 - 10 Gennaio 2012, 12:27:17
Non ho ancora chiuso la discussione perchè non riesco ancora a far funzionare la stampante.
Sistemao ticamente mi tira fuori un foglio miseramente bianco.
Allego un banale sorgente non funzionante.

Codice: [Seleziona]

Public Sub BTN_Chiudi_Click()
  Me.Close
End

Public Sub Form_Open()
End

Public Sub BTN_Stampa_Click()
Me.Printer1.Configure
 Me.printer1.Print

'  Printer1_Begin()
'  Printer1_Draw()
'  Printer1_End()
 
End

Public Sub Printer1_Begin()
End

Public Sub Printer1_End()
End

Public Sub Printer1_Draw()
Dim Messaggio As String
  Messaggio = "Res: " & Str(printer1.Resolution) & ", Width: " & Str(printer1.PaperWidth) & ", Height: " & Str(printer1.PaperHeight) 
   message.Info(Messaggio)                       
  Paint.Font.Name = "Sans"
  Paint.Font.Size = 90
  Paint.Font.Bold = True
  Paint.MoveTo(10, 135)
  Paint.Text("Hello kdjgh gkjh kghdf kgjh kgh kjgh kjh kh k kh khkh")
Paint.End
End

hai risolto?
Titolo: Re: Stampa con versione 2.99
Inserito da: vuott - 10 Gennaio 2012, 16:20:06
Non ho ancora chiuso la discussione perchè non riesco ancora a far funzionare la stampante.
Sistematicamente mi tira fuori un foglio miseramente bianco.
Allego un banale sorgente non funzionante.

Codice: [Seleziona]
Public Sub BTN_Stampa_Click()
Me.Printer1.Configure
 Me.printer1.Print
End

Public Sub Printer1_Draw()
Dim Messaggio As String
  Messaggio = "Res: " & Str(printer1.Resolution) & ", Width: " & Str(printer1.PaperWidth) & ", Height: " & Str(printer1.PaperHeight)  
   message.Info(Messaggio)                        
  Paint.Font.Name = "Sans"
  Paint.Font.Size = 90
  Paint.Font.Bold = True
  Paint.MoveTo(10, 135)
  Paint.Text("Hello kdjgh gkjh kghdf kgjh kgh kjgh kjh kh k kh khkh")
Paint.End
End

hai risolto?

Secondo me deve:
* eliminare il riferimento a Me. nella prima routine (a me dà errore se lo lascio lì);
* cambiare Paint.Text("......") in Paint.DrawText(".......")

In vero, può anche lasciare Paint.Text, ma in questo caso deve porre dopo di esso il comando Paint.Fill  .
Anche l'uso di Paint.RichText è possibile, ma - come nel caso di Paint.Text - si deve porre dopo di esso il comando Paint.Fill  .

Così modificato in uno dei due modi, a me il codice di aulin stampa perfettamente.