Newsgroup: it.comp.lang.visual-basic
Titolo: [vb 6] posizionamento label su preview di stampa

Ciao a tutti...
vorrei sottoporvi un quesito che mi sta assillando da parecchio.
Sto realizzando una  applicazione che prevede l'anteprima di stampa.
Nienete di eccezzionale, carico un vettore con le righe che mi servono e poi
le mnado su una
picture posizionandole.
il problema inizia a manifestarsi quando tento di posizionare delle lebol
tenendo conto de cambio di font.
Per esempio.
Se uso un carattere tipo Bookmark antiqua le scritte
Totale           Euro 1.000.000,00
Sconto 10%  Euro    100.000,00
_________________________
Totale           Euro    900.000,00
vengono bene, ma se uso un carattere come il courier new si sballa tutto e
non riesco a mantenere l'allineamento.
Ho provato a testare la textwidth delle stringhe da visualizzare e sono
impazzito cercando di compensare gli spazi con dei caratteri vuoti ( " ");
ho anche provato a dare alle label delle lunghezze fisse con la proprietą
width delle label....niente da fare..si scombina tutto
Sapreste darmi qualche suggerimento?
Non posso postare il codice perche sarebbe troppo lungo....
grazie

 tenendo conto de cambio di font.
mi sembra che il tuo problema sia dovuto al fatto che crei una "lebol" per
ogni riga, e questo ti crea dei problemi quando utilizzi dei font che non
hanno dimensione fissa (a parte il fatto che le cose dovrebbero essere il
contrario di quelle che tu segnali, visto che il courier è a spaziatura
fissa e il bookman mi sembra di no...)
La soluzione sarebbe quella di fare una label per ogni elemento che deve
essere incolonnato.....
Salutoni
Sergio

 ha scritto nel messaggio
news:wRrv9.45901$aL4.1...@news1.tin.it...

mi scuso per gli errori di battitura...staro piu' attento.
in effetti io creo una serie di label indicizzate, diciamo che una riga e'
composta da 6 label
ogniiunadelle quali contiene un pezzo della mia riga di stampa....
il mio problema e' quelo difare in modo che la stringa si posizioni a
differente distanza dal margine DX della pagina, a seconda della lunghezza
assunta dalla riga stessa quando viene riempita di caratteri.
Anche usanto il ridimensionamento automatico della label, queste o si
sovrappongono o fuoriescono dal margine mandandomi l'allineamento a
pallino....
ciao e scusate ancora

 assunta dalla riga stessa quando viene riempita di caratteri.
Scusa la domanda: vuoi che alcune scritte siano allineate a destra? In tal
caso non ti preoccupare della loro dimensione, utilizza la loro proprietà
label.alignement= vbrightalign (o qualcosa del genere) e allinea il bordo
destro della label al bordo destro delle altre....
Se le vuoi allineate a sinistra procedi al contrario (é applicabile anche ad
un allineamento centrato, in effetti...)
Salutoni
Sergio

"Emanuele"
(snippone)
Oltre a tutto quanto detto, guarda il thread "Stampe" aperto da Ilario
Santamaria il 28/10, per un diverso approccio al problema della preview,
particolarmente ai suggerimenti di Lupo che riguardano l'utilizzo del metodo
Print del picturebox.
Forse potrà sembrarti complicato, ma mi sembra molto "controllabile" da
codice
hth
Salutoni
Sergio

codice
E lo e'. Io mi sono racchiuso la print preview in una dll
e mi sono persino dimenticato come l'avevo fatta ;-)
-- 
ciao, hal
che non ho ancora capito perche' farsi del male con 
crystal report :-P


[cut]

 picture....
dal quale si capisce che invece utilizzi Picture.print per ottenere il tuo
preview.....
vabbeh, sarò tardo io di comprendonio.....
comunque, se vuoi allineare a destra un testo con il picture.print una cosa
del genere, supponendo che la scale della picture sia in twips
dim a as string
dim b as string
dim Tabulazione as single
tabulazione = 5000
a = "Pippo"
b = "Paperino"
printer.currentx = tabulazione - picture.textwidth(a)
pinter.print a
printer.currentx = tabulazione - picture.textwidth(b)
pinter.print b
in teoria, secondo me dovrebbe funzionare
Salutoni
Sergio