cs_Jean_Jean
Messages postés615Date d'inscriptiondimanche 13 août 2006StatutMembreDernière intervention13 décembre 2018
-
9 juin 2009 à 18:11
cs_Jean_Jean
Messages postés615Date d'inscriptiondimanche 13 août 2006StatutMembreDernière intervention13 décembre 2018
-
11 juin 2009 à 18:56
Bonjour,
Je ne suis pas familiarisé avec les Listview et je reconnais que ce sont des composants fascinants. N'ayant pas trouvé de réponse à mon problème, j'ai donc décidé de vous le soumettre.
La listView affiche en réalité une liste de fichiers qui est sélectionnée dans une comboBox.
La Liste fait apparaitre normalement les noms de fichiers (nom + ext) dès l'apparition de la fenêtre.
Or dès que je change de liste (clic dans Combo), la ListView ne fait plus apparaitre qu'une partie du nom des fichiers de la liste. Les fonctions appellées sont pourtant les mêmes.
Y a-til un paramètre de largeur de colonne qui aurait pu changé entre temps. Je ne défini pas à la conception de colonne (une seule par défaut)?
J'ai essayé d'utilisé l'instruction : listView1.Columns.Items[0].MaxWidth := 200; Mais Er indice hors limite. Ma colonne par défaut ne semble pas posséder d'indice!
Je soupçonnais au départ, ma StringListListFicRec chargée en lisant le fichier,! Mais même lorsque les valeurs du Composant ListView sont tronquées, en déplaçant la curseur sur le nom de fichier tronqué, le nom complet apparait dans la bulle (en éxécution).
Dans FormCreate
...
ListView1.ViewStyle := vsList;
ListView1.Clear;
UpdateListFicRechercheWithFic (FicREC, ListFicRec);
Affiche_ListeFicRecherche (FicREC,ListView1,ListFicRec);
...
Procedure Affiche_ListeFicRecherche (Const aFicREC : String;
Var aListView : TListView;
Var ListR : TStringList);
var i : integer;
ListAjout : TListItem;
Begin
aListView.Clear;
if ListR.Count > 0 then
begin
For i := 0 to ListR.Count -1 do
begin
ListAjout := aListView.Items.Add;
ListAjout.Caption := ListR.Strings[i];
end;
aListView.Update;
end
End;
procedure TFormFichRecherche.ComboNomFicRecClick(Sender: TObject);
begin
If ComboNomFicRec.ItemIndex > -1 then
begin
...
FicRec := SRep_User + '\Fichiers\' + ComboNomFicRec.Text; // Nomfichier complet
UpdateListFicRechercheWithFic(FicREC,ListFicRec);
Affiche_ListeFicRecherche(FicREC,ListView1,ListFicRec);
end
end;
Voilà, si une lumière passe ici, elle pourra m'éclairer. Merci d'avance.
Jean_Jean
cs_Jean_Jean
Messages postés615Date d'inscriptiondimanche 13 août 2006StatutMembreDernière intervention13 décembre 20183 10 juin 2009 à 20:43
Bj
En fait, lorsque l'on définit le paramétrage des colonnes, on est obligé d'être en mode ListView1.ViewStyle := vsReport;
Ce qui me fait apparaître des barres grises très moches en haut de mes colonnes.
C'est la seule solution que j'ai trouvé! Lors de l'exécution, mes noms de fichiers restent entiers.
Franchement, ça n'est pas très satisfaisant car je suis obligé maintenant de trouver le moyen de colorer cette barre de titre pour rester en harmonie avec mes couleurs. Ce qui va m'obliger à travailler sur les couleurs systèmes (précédent code posté) , ce qui n'est pas de la tarte. Comme je n'ai pas fini la mise à jour (aurai-je fini un jour??????????????????), j'attends, j'attends mais quoi au juste.
Bon, je vais peut-être publier ce que j'ai déjà et peut-être cela donnera des idées à plus compétent en la matière.
je valide la solution donnée plus haut, mais si vous avez d'autres idées, je suis preneur pour faire disparaître cette horible barre
cs_Jean_Jean
Messages postés615Date d'inscriptiondimanche 13 août 2006StatutMembreDernière intervention13 décembre 20183 11 juin 2009 à 18:56
Exact Cirec!
En mettant la propriété de visibilité des colonnes à false, l'horrible gris disparait.
Finalement, sympa ce composant. Je ne l'avais jamais utilisé. Mon pied, même du temps du turbo Pascal c'était les calculs scientifiques. J'ai failli abandonner ce langage quand on est passé au début en programmation objet car on travaillais à cette époque avec les routines directes du système (les API maintenant). Je me souviens des turbines gaz pour de simples controles de saisie d'une combo.
Ce que j'aimerais avoir 20 ans de moins. J'ai tellement de projets dans mes cartons, c'est un peu frustrant! Heureusement que ce site existe, grand bienfait à ceux qui le font vivre.