Alignement dans un TListBox
Bien le bonjour à tous,
Je me demandais s'il est possible de faire un alignement dans un TListBox? Par exemple :
Un début de ligne | fin de ligne.
Bonjour | à tous.
Testing one two | one two.
Les caractères | seraient tous placés à la même position vers la droite dans le ListBox, ce qui créerait un "genre" d'alignement si on veut.
Mes premiers tests furent de me créer des fonctions permettant de faire des alignements, puis d'essayer de les utiliser avec le TlistBox. Dans un fichier texte ça va marcher parfaitement, mais pour une raison x ce n'est pas fonctionnel dans un TListBox.
Voici le genre de fonction que je me suis fait :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
|
function UStr_Pad_Right(cStr : String; nLong : integer; cCar : Char) : string;
var i, nLen : integer;
PadStr : string;
begin
PadStr := '';
Result := trim(cStr);
nLen := nLong - Length(Result);
if nLen > 0 then
begin
for i := 1 to nLen do
PadStr := PadStr + cCar;
Result := Result + PadStr;
end
else Result := copy(Result,1,nLong);
end; |
Après je faisais par exemple :
Code:
1 2 3 4
|
ListBox1.Items.Add( UStr_Pad_Right(chaine1, 50, ' ') + chaine2);
ListBox1.Items.Add( UStr_Pad_Right(chaine3, 50, ' ') + chaine2);
ListBox1.Items.Add( UStr_Pad_Right(chaine4, 50, ' ') + chaine2); |
Mais malheureusement, comme je le mentionnais, ça va bien fonctionner dans un fichier texte mais pas dans un ListBox.
Avez-vous une idée?
Merci d'avance... :roll: