Newsgroup: it.comp.lang.visual-basic
Titolo: Formattazione stringhe!!!

Ciao a tutti,
vorrei sapere come formattare delle stringhe in un ListBox
in modo che vengano bene allineate.
il listato è questo:
tit = Data1.Recordset("titolo")
tit = tit & (Space$(25 - Len(tit)))
List1.AddItem (cod) & "  |  " & (tit) & "  |  " & (art)....
il tutto viene ripetuto per la lunghezza del recordset.
Il risultato è tipo questo:
33/0001  |  UNTITOLO              |  UNARTISTA
33/0002  |  ALTROTITOLO          |  ALTROARTISTA
33/0003  |  TITOLOX                |  ARTISTAX
Perchè non si allineano i campi "ARTISTA"?
Spero di essermi spiegato bene.
Sono sicuro che c'è un metodo diverso ed anche migliore per avere quello che
voglio.
GRAZIE MILLE

 ha scritto nel messaggio
news:Be5xa.183356$
K35.4...@news2.tin.it

Una volta anche io avevo ,reputato questo un errore della listview, infatti
lasciando il codice inalterato e cambiando carattere in courier magicamente
tutto si allinea
ho dismesso la listview per queste cose oppure crei delle colonne.
Ciao
Alessandro
--
Morfeus®
Free Joint
:PII

 GRAZIE MILLE
ciao
    Orla

 Perchè non si allineano i campi "ARTISTA"?
Beh, uno spazio non occupa, in twips, la stessa larghezza di una lettera. E
due lettere possono occupare larghezze diverse.
Quindi, hai tre strade:
1) usare un font a spaziatura fissa
2) quando componi la stringa, in un ciclo determinare la larghezza occupata
fino a quel momento dai campi precedenti, ed inserire un numero di spazi
corretto per ottenere un buon allineamento (non perfetto al pixel, se
vogliamo, ma quasi).
3) Usare una Api che consente di impostare delle tabulazioni nella listbox.
La soluzione 1 ha la sfiga che i font a spaz. fissa sono orridi.
La soluzione 2 è la più complessa, ma ha il vantaggio di non sfruttare le
Api (e, soprattutto, una volta messa in piedi la struttura del codice, puoi
riutilizzare lo stesso concetto anche per allineare oggetti e testi, testi
in qualunque controllo, ecc...). Io uso questa.
La soluzione 3 è la più semplice, ma sfrutta le Api, quindi, a rigore, è un
po' meno pulita.
Su post passati (vedi google), trovi il codice già pronto per il tuo
problema.
Ciao
Alberto


Prova con il carattere LUCIDA CONSOLE, non è male
Ciao Gab

 ha scritto nel messaggio
news:Ur5xa.6839$lK4.1...@twister1.libero.it...

beh Grazie per le tante risposte a tutti comunque ho preso buona la
prima(uso un font a spaziatura fissa) mi sembra il più veloce ed il più
facile...PROBLEMA RISOLTO GRAZIE ANCORA!!

 problema.
Scusate se mi intrometto, ma sapreste dirmi come lo devo cercare su google ?
Ho inserito "formattazioen stringhe" e "formattare stringhe" ma non ho
trovato il post col codice.
Grazie

 ma non ho trovato il post col codice.
si, a volte lo diamo per scontato , quando diciamo "cerca nei post vecchi su
google" intendiamo :
http://groups.google.it/groups?hl=it&lr=&ie=UTF-8&group=it.comp.lang.visual-
basic
e non il normale motore di ricerca !
-- 
<Gigio2K>
Sito Comune
Nokia -> I.T.H.N. -> 
http://www.ithn.it/
VB -> I.C.L.VB -> 
http://www.it-lang-vb.net/

 e non il normale motore di ricerca !
lo so, ed io proprio li' ho digitato le stringhe di ricerca ma il risultato
e' stato di solo 4 articoli (e tra questi non c'era quello di cui si
parla)...
Grazie


Beh, il subject di questo thread è poco centrato sull'argomento.
Direi che qualcosa come "colonne in listbox" sarebbe meglio.
Comunque devi lavorare di fantasia, non è che basti prendere un subject e
incollarlo in google. Occorre quantomeno capire l'argomento.
E' evidente che "formattare stringhe" vuol dire tutto e niente.
Come ulteriore indizio, metti il mio nick come postatore.
Altro non ricordo.
Ciao
Alberto

 La soluzione 1 ha la sfiga che i font a spaz. fissa sono orridi.
"Andale mono" è decente...
Bye, G.

 "Andale mono" è decente...
bha io veramen..... O_o hei.... ma che ci fai qui ? ^_^
Bentornato , allora ? Quando ci presenti il nuovo arrivato ? (foto)
By G
