Newsgroup: it.comp.lang.perl
Titolo: Win32::GUI: come si stampa??

Ciao a tutti.
Qualcuno sa darmi un indirizzo in cui trovare informazioni su come stampare
i singoli oggetti di una finestra Main con il modulo Win32::GUI?
Grazie.
Andrea

i singoli oggetti di una finestra Main con il modulo Win32::GUI?
Che cosa vuol dire?
Che cosa sarebbe una finestra "Main"? Di solito, gli oggetti di una
finestra sono controlli: che cosa vuol dire stampare un controllo?
Ciao.

 wrote in message
sb6nf01dhpc6mq5eh...@4ax.com...

Ho creato una unica finestra all'interno della quale stampo una serie di
statistiche, pubblicate o in campi di testo o in liste. In alcuni casi avrei
bisogno di pubblicare un insieme di campi di testo (dove pubblico i
riepilogativi statistici), in altri casi dovrei poter pubblicare una listbox
(in cui pubblico l'elenco dei singoli item), o almeno il suo contenuto (le
listbox hanno infatti la barra di scorrimento, altrimenti il loro contenuto
non sarebbe completamente visibile).
Spero di essere stato sufficientemente chiaro ;-)
Grazie mille.
Andrea

 wrote in message
sb6nf01dhpc6mq5eh...@4ax.com...

Scusa Giovanni,
forse ho dimenticato di specificare che quando parlo di stampare, intendo
proprio l'invio alla stampante.
Grazie.
Andrea

 proprio l'invio alla stampante.
prova a vedere se questo thread ti è d'aiuto:
http://www.perlmonks.org/index.pl?node_id=193434

proprio l'invio alla stampante.
Adesso, se dici che cosa intendi per "pubblicare", ci sono quasi. ;-)
I controlli di Win32::GUI provvedono un metodo paint($dcDev, $rhBrush,
$objDesign, $rhPosCache), al riguardo del quale la documentazione è quanto
mai reticente.
Verrebbe da pensare che, provvedendo il dcDev della stampante, qualche cosa
potrebbe pure succedere. Sta di fatto che l'unico Device supportato da
Win32::GUI è "Display", cioè lo schermo. E non è neppure chiaro che cosa
sia, per Win32::GUI, un dcDev (si potrebbe pensare, altrimenti, di usare
Win32API per ottenere il HDC della stampante).
Immagino che tu debba perciò ottenere da Win32::GUI il contenuto dei
controlli, e procurarti qualche cos'altro per stamparli (per inciso, il
modulo Win32::Printer di ActiveState sembra corrotto).
In mancanza d'altro, un semplice print, con un opportuno open, potrebbe
anche funzionare, se non hai esigenze grafiche particolari (c'è anche un
modulo Printer che potrebbe aiutare). Sempre se non hai esigenze grafiche,
un'altra soluzione potrebbe essere mettere tutto in un file di testo e
stampare da Notepad; o costruire un file html e stampare da IE. Altrimenti,
un'alternativa potrebbe essere sbattere tutto in un documento Word, o
qualche altra cosa che sia possibile controllare attraverso Win32::OLE, e
stampare da lì.
In generale, io propenderei appunto per costruire un documento da stampare
con qualche altro strumento (TeX?), piuttosto che pilotare direttamente la
stampante da perl. Dovrebbe però essere possibile anche questo. A parte
questo fantomatico Win32::Printer, che eventualmente si può tentare di
compilare e installare da cpan, alla peggio si potrebbe tentare qualcosa
attraverso Win32::API.
Ciao.

 Adesso, se dici che cosa intendi per "pubblicare", ci sono quasi. ;-)
Mi vergogno un po' a dirlo, ma intendevo proprio "inviare alla stampante"
anche in questo caso ;-)

Ottimi consigli, sia da Giovanni che da Andrea.
Mi sembra piu' che soddisfacente passare da Notepad: posso dare un minimo di
formattazione e faccio fare tutto a Bill ;-) A me basta semplicemente poter
incolonnare i dati e con Notepad non dovrei aver problemi ad inserire
qualche TAB. Preferisco non  avere grafica. In questo modo, mi sembra anche
piu' facile il percorso, potendo verificare il contenuto del file prima
della stampa.
Davvero grazie!
Andrea