Salut,
effectivement, à la lumière d'un lundi matin, mieux reposée et bien moins stressée, je me rends compte à quel point ma remarque était stupide! promis, je serai plus rigoureuse à l'avenir, merci pour votre patience et votre indulgence...
Je ne peux pas copier / coller mon code, mais je vais essayer d'être la plus claire possible:
- CListCtrl ListDCI est une variable privée de ma classe qui hérite d'un CDialog.
- dans la fonction OnInitDialog() de ma classe, je crée ma liste contrôle de la manière suivante :
1 2
|
ListDCI.CreateEx(WS_EX_RTLREADING, WS_CHILD | WS_VISIBLE | LVS_REPORT , CRect(LISTE_DCI_POS, ZONE_SIZE_LISTE_DCI), this, IDC_LIST_DCI); |
- dans cette même fonction, j'insère mes colonnes avec ListDCI.InsertColumn(...);
puis je fais :
ListDCI.ModifyStyleEx(WS_EX_LEFTSCROLLBAR,WS_EX_RIGHTSCROLLBAR);
- dans une autre fonction d'affichage, j'insère les lignes, en fonction des données qui sont sauvegardées dans une map.
- ensuite, une autre fonction gère par exemple, le changement de valeur d'une donnée. Pour cela, une dlg de confirmation est affichée:
if (dlgMess.MessageToDisplay(tmp, CConstantes::S_MESSAGE_CONFIRMATION) == IDOK)
à la fin de ce traitement, je fais :
1 2 3
|
ListDCI.UpdateWindow();
ListDCI.SetFocus(); |
pourtant, j'ai toujours ma zone d'ombre, et ma list view ne se réaffiche pas correctement.
j'espère avoir été un peu plus claire, et merci encore pour votre aide !!
Partager