#1
|
|||
|
|||
![]()
J'aimerai savoir comment changer visuellement la sélection d'une Listview. La commande ListView_setsel ne semble n'avoir aucun effet.
Merci d'avance. |
#2
|
|||
|
|||
![]()
Utilisez ListView_Select, elle fonctionne.
|
#3
|
|||
|
|||
![]()
Non, malheureusement cet commande ne fait rien au visuel.
|
#4
|
|||
|
|||
![]()
Changez la function dans swapi.ppl par celle-ci:
proc ListView_Select(ListView$, index$, state$) local(lvItem$); struct(lvItem$, LVITEM); lvItem.Mask$ = LVIF_STATE; lvitem.State$ = state$; lvItem.StateMask$ = LVIS_SELECTED; lvItem.iItem$ = int(index$); SendMessage(ListView$, LVM_SETITEMSTATE, int(index$), &lvItem$); end; |
#5
|
|||
|
|||
![]()
Cette procédure ne fonctionne pas non plus. à moins que ce soit dû au paramètre state$. J'aimerai avoir un exemple d'appel de la procédure. J'ai essayer true and false. J'ai rien trouvé dans les définitions de Common.ppl.
|
#6
|
|||
|
|||
![]()
Celle-ci fonctionne:
proc ListView_Select(ListView$, index$, state$) local(lvItem$); struct(lvItem$, LVITEM); lvItem.Mask$ = LVIF_STATE; if (state$) lvitem.State$ = LVIS_SELECTED; end; lvItem.StateMask$ = LVIS_SELECTED; SendMessage(ListView$, LVM_SETITEMSTATE, int(index$), &lvItem$); end; |
#7
|
|||
|
|||
![]()
Cette procédure sélectionne bien l'élément. Mais ne rend pas l'élément sélectionné visible. S'il n'est pas dans la plage visible de la liste view.
|
#8
|
|||
|
|||
![]()
C'est normal. Il faut que le focus soit sur le ListView sinon utilisez l'option LVS_SHOWSELALWAYS quand vous créez votre control.
|
#9
|
|||
|
|||
![]()
J'ai essayé vos deux suggestions mais cela ne change rien.
|
![]() |
Thread Tools | Search this Thread |
Display Modes | |
|
|