bonjour,
je chercherais a cacher une colonne dans un listview, étant donné qu'il n'y a pas de propriété "Visible" je ne vois pas comment je pourrais faire.
merci
bonjour,
je chercherais a cacher une colonne dans un listview, étant donné qu'il n'y a pas de propriété "Visible" je ne vois pas comment je pourrais faire.
merci
Salut
A ouais je n'avais jamais remarqué !
Peut-être en jouant sur la largeur de la colonne:
Attention à MinWidth.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 ListView1.Column[2].Width := 0;
@+ Claudius
hélas non, car avec ça l'utilisateur peut toujours faire réapparaitre la colonne manuellement![]()
SAlut
Effectivement c pas cool, j'ai bien essayé de magouillé un truc mais c pas simple....
N'aurais tu pas la possibilité de stocker les valeur de ta colonne et du la supprimer physiquement? et au moment de la faire reapparaitre remettre les valeur en place.
As tu regarder dans la JVCL, je connais tres tres mal les composant de cette serie ne les ayant installer que recement mais ils parraissent nombreux et pas mal fait ... enfin de ce que j'en ai vu et lu sur le forum.
Sinon apres il te reste la solution pas tres propre mais ... bon ... c'est de mettre 2 ListView dans ton projet tu renseignes celle avec toutes les colonnes et au moment de faire disparaitre une colonne tu copie toutes les valeurs dans l'autre ListView sans les données de la colonne "cachée", et tu cache la complete et fait apparaitre l'incomplete.
Si tu dois rajouter des lignes alors que la ListView est incomplete(colonne cachée) tu met a jour la ListView complete qui mettra automatiquement a jour la ListView "incomplete" (par du code).
Je sais pas si mes explication sont tres claire ... surement atant que la solution est propre...
A++
Qwaz qui sort la tete basse
Edit
La nuit porte conseil ^^, peut etre une autre piste serait au niveau de la methode Draw d'empecher le dessin de cette colonne.
/Edit
MagicQwaz := Harry Potter la baguette en moins
Le monde dans lequel on vit
Ma page perso DVP
Dernier et SeulTutoriel : VBA & Internet Explorer
Dernière contribution : Lien Tableau Structuré et UserForm
L'utilisation de l’éditeur de message
mmm est-ce que vous sauriez éventuellement comment est-ce que je peux indiquer 0 comme valeur pour le maxwidth sans que cette valeur soit considérée comme nulle et qu'il n'y ai pas de limites ?
avec width = 0 et maxwidth=0 ça suffirait![]()
Cette Colonne sert à quoi ? pourquoi ne pas afficher juste ce qui est utile, et stocker les autres données internes je présume comme un ID dans un Pointer (tu stocke dans le Data de l'Item, c'est fait pour !)
Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !![]()
Attention Troll Méchant !
"Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
L'ignorance n'excuse pas la médiocrité !
L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
Il faut avoir le courage de se tromper et d'apprendre de ses erreurs
Yep !
L'objet TListColumn représente une colonne d'une vue liste de style état (aide Delphi), et cet objet possède une propriété AllowResize (dérivée de TCustomHeaderSection), qui serait à mon avis la voie à explorer (AllowResize := False; ), couplée avec Width := 0;
Mais je ne peux pas en dire plus, mon aide (D7 PE) est cassée quand je clique sur le lien,
Mes 2 cts,
--
jp
[edit, 1 h après] Je dois pas être doué, ch'suis arrivé à rien avec cette piste...
Pa contre, je suis arrivé à un truc sympa en utilisant un THeaderControl au-dessus d'une Listview avec .ShowColumnHeaders := False; et cette fois, le HeaderControl1.Sections[lindexquivabien].Width := 0; fonctionne !
À toi de gérer, en cas de resize des autres "en-têtes", pour répercuter sur les largeurs des colonnes de la listview.
Ça devrait fonctionner.
[/edit]
ok merci
et cela est possible tout en gardant la barre visible ??![]()
Partager