Bonjour � tous,

Avant d'expliquer le probl�me, voici je que j'essaye de faire. J'ai un tabControl avec 2 onglets (entre autres). Le premier contient une listbox avec la liste des fen�tres ouvertes, et le deuxi�me contenant un listview avec la liste des processus. Cette partie de mon application est tr�s similaire au gestionnaire des t�ches de Windows. Je veux que lorsque l'utilisateur s�lectionne une fen�tre (via la listbox) et qu'il clique sur un bouton, le programme bascule vers le deuxi�me onglet et s�lectionne le processus correspondant � la fen�tre dans la liste.

Dans mon code, je commence donc par trouver la bonne ligne dans le listview (apr�s avoir bascul� dans le 2�me onglet), puis je la s�lectionne en utilisant le message LVM_SETITEMSTATE. Enfin je donne le focus au listview avec le message WM_NEXTDLGCTL pour que la s�lection soit bien visible. C'est l� que �a coince... En effet lorsque je r�duit puis que je restaure la fen�tre de mon application, la listview appara�t comme un grand rectangle blanc. Je suis obliger de changer d'onglet manuellement pour que sont contenu soit de nouveau visible.

Voici le code qui me permet de s�lectionner la ligne dans le listview:
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
 
// On donne le focus au listview
SendMessage(hWndMain, WM_NEXTDLGCTL, (WPARAM)hProcessList, TRUE); // J'ai exactement le même problème avec SetFocus(hProcessList)
HWND hTabCtl = GetDlgItem(hWndMain, IDC_TAB1);
// On bascule sur l'autre onglet
SendMessage(hTabCtl, TCM_SETCURSEL, 4, 0);
UpdateTab(hWndMain);
LVITEM lvItem;
ZeroMemory(&lvItem, sizeof(LVITEM));
int index=2; // index de la ligne à sélectionner, j'ai supprimer la partie concernant la recherche de la ligne pour alléger le code
lvItem.state = LVIS_SELECTED;
lvItem.stateMask = LVIS_SELECTED;
// On sélectionne la 2ème ligne
SendMessage(hProcessList, LVM_SETITEMSTATE, index, (LONG)&lvItem);
SendMessage(hProcessList, LVM_ENSUREVISIBLE, index, 0);
Voici un petit aper�u du probl�me: (le rectangle blanc est l'emplacement du listview)



Est-ce que quelqu'un � d�j� rencontrer ce type de probl�me ? Ou bien est ce que j'ai oubli� quelques chose ?

Merci d'avance pour toute suggestion, id�e...

Beno�t

PS: Je n'ai pas ce probl�me d'actualisation si je ne donne pas le focus au listview. Malheureusement dans ce cas la s�lection est tr�s peu visible...