Ariane Soft PPL2 Pocket Programming DataMite
  #1  
Old 06-06-2008, 04:01 AM
Alain Carignan Alain Carignan is offline
Junior Member
 
Join Date: Apr 2008
Posts: 19
Default Listview 2

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.
Reply With Quote
  #2  
Old 06-08-2008, 08:12 PM
kornalius
Guest
 
Posts: n/a
Default

Utilisez ListView_Select, elle fonctionne.
Reply With Quote
  #3  
Old 06-09-2008, 12:40 PM
Alain Carignan Alain Carignan is offline
Junior Member
 
Join Date: Apr 2008
Posts: 19
Default

Non, malheureusement cet commande ne fait rien au visuel.
Reply With Quote
  #4  
Old 06-09-2008, 05:01 PM
kornalius
Guest
 
Posts: n/a
Default

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;
Reply With Quote
  #5  
Old 06-09-2008, 09:12 PM
Alain Carignan Alain Carignan is offline
Junior Member
 
Join Date: Apr 2008
Posts: 19
Default

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.
Reply With Quote
  #6  
Old 06-09-2008, 09:35 PM
kornalius
Guest
 
Posts: n/a
Default

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;
Reply With Quote
  #7  
Old 06-10-2008, 12:05 AM
Alain Carignan Alain Carignan is offline
Junior Member
 
Join Date: Apr 2008
Posts: 19
Default

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.
Reply With Quote
  #8  
Old 06-10-2008, 01:06 AM
kornalius
Guest
 
Posts: n/a
Default

C'est normal. Il faut que le focus soit sur le ListView sinon utilisez l'option LVS_SHOWSELALWAYS quand vous créez votre control.
Reply With Quote
  #9  
Old 06-11-2008, 02:31 AM
Alain Carignan Alain Carignan is offline
Junior Member
 
Join Date: Apr 2008
Posts: 19
Default

J'ai essayé vos deux suggestions mais cela ne change rien.
Reply With Quote
Reply

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 07:54 AM.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2020, Jelsoft Enterprises Ltd.
Copyright (c) ArianeSoft Inc.
Copyright © 2009 www.ppl-lang.com - All rights reserved
Web Design by BR Web Consulting Ltd