Listview selection clignotement help

Signaler
Messages postés
903
Date d'inscription
mercredi 23 février 2005
Statut
Membre
Dernière intervention
16 juin 2010
-
Messages postés
131
Date d'inscription
jeudi 17 juin 2004
Statut
Membre
Dernière intervention
7 juillet 2005
-
Bonjour,

j'ai un listview avec des personnes dedans et quand je clique sur une personne j'ai a droite deux champs de saisie nom et prenom qui affiche le nom et le prénom de la personne. Le problème c'est quand je clique dans mon listview dans la zone blanche, c'est a dire en dessous des mes listviewitem. J'ai fais :


ListView::SelectedListViewItemCollection * b = listview_n->SelectedItems;









if ((b->get_Count() != 0))
{


panel1->enabled = true ;
Personne_selectionne =
dynamic_cast( b->get_Item(0)->get_Tag());
nom->Text = Personne_selectionne->get_Nom() ;
prenom->Text = Personne_selectionne->get_Prenom() ;
}
else
{
panel1->enable = false ;
}
C'est à dire si y'a pas de selectione panel1 est grisé. Ca marche tres bien le probleme c'est que quand je clique dans mon listview sur jean et ensuite sur paul, y'a un temps tres rapide ou b->get_count 0 ; et ou donc ca me fait panel1->enabled false. Et donc ca clignote et c'est pas super parceque panel1->enable = true; panel1->enabled = false; pendant 1 miliseconde et panel1->enable = true ; quand la selection revient sur une personne.

Voila, si quelqun avait la solution....

Par avance, merci.

3 réponses

Messages postés
131
Date d'inscription
jeudi 17 juin 2004
Statut
Membre
Dernière intervention
7 juillet 2005

Bonjour,

Y'a de forte chance que tu trouves une reponse plus apropriée sur les forum de C/C++ car ici c'est du c#

mais moi j'aurais plus utilisé SelectedIndexChanged comme évènement à part ca ...

hum.......
Messages postés
903
Date d'inscription
mercredi 23 février 2005
Statut
Membre
Dernière intervention
16 juin 2010
2
merci de ta reponse. C'est du c++.net c pareil que le c# tu remplaces juste les -> par des .oui je precise, que mon code plus haut est dans l'evenement


private: System::Void listview_SelectedIndexChanged(System::Object * sender, System::EventArgs * e)


{
}

selectindexchanged du listview
Messages postés
131
Date d'inscription
jeudi 17 juin 2004
Statut
Membre
Dernière intervention
7 juillet 2005

Si j'ai bien compris tu n'as pas de multiselec,
du cout à ta place j'utiliserais SelectedIndex qui serait plus cohérent avec ton évènement, d'ailleur ca vient peut etre de la, il me semble ( à verifier) que l'index change et apres l'item change ( temps tres court) du coup ton item n'est pas selectionné quand l'index change ... sinon je ne vois pas d'autre explication.

hum.......