Newsgroup: it.comp.lang.visual-basic
Titolo: VB6 .ShowPrinter -> oggetto printer

Mi sono accorto che le proprietà del mio oggetto printer rimangono
inalterate anche se il CommonDialog.ShowPrinter dovrebbero aver modificato
le caratteristiche della pagina.
Mi sembra di aver capito che in realtà il mio ShowPrinter non modifica
effetttivamente le impostazioni della stampante perchè non uso il HDC.
Però non ho capito affatto la sequenza delle istruzioni da utilizzare
affinchè
le impostazioni della stampante vengano modificate e che in seguito il mio
oggettto printer abbia le proprietà corrette.
In breve, cosa manca alla seguente routine?
Public Sub Cambia_LP()
'DLG_Stampante è un common dialog
On Error GoTo lp_err
DLG_Stampante.Flags = cdlPDPrintSetup
DLG_Stampante.CancelError = True
DLG_Stampante.ShowPrinter
On Error GoTo 0
Exit Sub
lp_err:
If err.Number <> 32755 Then 'Premuto annulla
     MsgBox "Error " & err.Number & " (" & err.Description & ") in procedure
Cambia_LP"
End If
Resume Next
End Sub
Grazie a chi volesse aiutarmi.
Saluti a tutti, Sauro

 modificato le caratteristiche della pagina.
...
http://makeashorterlink.com/?M3C465CD6

 
http://makeashorterlink.com/?M3C465CD6
Ciao Lupo.
Grazie per la dritta.
Ho scaricato il tutto che perņ non funziona.
Le funzioni:
    GlobalAlloc
    GlobalLock
    GlobalUnlock
non sono presenti.
Devo forse istallare qualche componente?
O che altro?
Ciao, Sauro

[*Sauro Vicchi* = 
sv...@inwind.it
 in
news:kUXEb.198541$
vO5.7...@twister1.libero.it
] ha scritto:

Sģ, come si nota da chi ha risposto, mancava un po' di roba.
Puoi trovare le varie dichiarazioni (ma qui al contrario ne dovrai eliminare
un po'...) qui:
http://makeashorterlink.com/?L25732CD6
Il tutto si trova comunque su 
www.allapi.net
, scaricando APIGuide e poi
cercando PrintDialog.
E' molto lungo, se serve lo pubblico.

 E' molto lungo, se serve lo pubblico.
ok, ce l'ho fatta (manca ancora F_ERRORE) e funziona.
Però non risolve il mio problema in quanto il form visualizzato è come
quello caricato con:
DLG_Stampante.Flags = cdlPDReturnDC
e non come quello che voglio con:
DLG_Stampante.Flags = cdlPDPrintSetup
Solo quest'ultimo form permette di modificare le caratteristiche
della pagina (A4, 11" ecc.)
Grazie comunque.
Ciao, Sauro
cari

 della pagina (A4, 11" ecc.)
Ma il bottone che accede alla finestra dei formati dovrebbe esserci, no?

> DLG_Stampante.Flags = cdlPDPrintSetup
Vedi, nell'esempio di APIGuide, ShowPageSetupDlg

 Ma il bottone che accede alla finestra dei formati dovrebbe esserci, no?
A casa ho istallata solo una stampante generica solo testo (quindi non
vorrei
dire cose sbagliate) ma non mi sembra.

 Vedi, nell'esempio di APIGuide, ShowPageSetupDlg
Mi scoccia doverlo ammettere, ma nelle ricerche con explorer
sono proprio imbranato.
Già dai tuoi post precedenti ho cercato nel sito da tè indicato
senza riuscire a scaricare il file completo.
Riproverò ancora.
;-) Sauro

 Riproverò ancora.
Ehhhhh???? ;-)
www.allapi.net
. Nella pagina che si presenta (ho provato or-ora) c'è, nelle
prime righe, un link a API-Guide che poi è questo
http://www.mentalis.org/agnet/apiguide.shtml
In fondo alla pagina che ne esce c'è il link per il download
(
http://www.mentalis.org/agnet/appdown.shtml
), clicca su uno dei due Europe
e il gioco (dopo 2.2 Mb e l'installazione) è fatto.

 dire cose sbagliate) ma non mi sembra.
Ci deve essere il bottone (non so con quale dizione, forse impostazioni,
preferenze, etc.), ma c'è.
In ogni caso ho appena provato l'esempio di API-Guide. Ci sono 6 bottoni,
che vanno creati. Gli ultimi due mostrano i due dialoghi (e da ogni dialogo
sc'è un bottone che mostra l'altro). Ovviamente (sic) sono diversi da quelli
che otterresti con ShowPrinter... ma i contenuti dovrebbero esserci tutti,
adeguati alla stampante scelta o predefinita.


Fatto.
Domani in ufficio farò le prove con la stampante.
Poi ti dirò com'è finita.
Ciao, Sauro

OK, Funziona.
Nota che l'esempio delle API è incompleto anche se funziona.
Solo la routine (ho aggiunto una sola modifica) trovata nel sito
che mi hai suggerito è completa.
Infatti dopo la scelta della stampante aggiorna l'oggetto printer
in modo adeguato alle caratteristiche della pagina.
Ciao e grazie.
BUONE FESTE.
Sauro