Page 1 sur 2
ListIconGadget PB 5.11 [RESOLU]
Publié : mar. 11/juin/2013 12:46
par MLD
Bonjour a tous
Comment justifier les textes dans les colonnes d'un ListIconGadget sous PB 5.11 et Windows XP??
Merci de vos réponses
Re: ListIconGadget PB 5.11
Publié : mar. 11/juin/2013 13:01
par GallyHC
Bonjour,
Personnellement j'utilise le code ci-dessous :
Code : Tout sélectionner
Procedure AlignGadgetColumn(igadget.i, iColumn.i, ialign.i)
;
Define lvc.LV_COLUMN
lvc\mask = #LVCF_FMT
lvc\fmt = ialign
SendMessage_(GadgetID(igadget), #LVM_SETCOLUMN, iColumn, @lvc)
EndProcedure
Pour la variable "ialign", voir le site de Microsoft "
http://msdn.microsoft.com/en-us/library ... s.85).aspx", donc tu as :
Code : Tout sélectionner
#LVCFMT_LEFT
#LVCFMT_RIGHT
#LVCFMT_CENTER
#LVCFMT_JUSTIFYMASK
#....
Je n'ai pas testé "#LVCFMT_JUSTIFYMASK ", mais "#LVCFMT_RIGHT et #LVCFMT_CENTER", fonctionne très bien pour moi.
Cordialement,
GallyHC
Re: ListIconGadget PB 5.11
Publié : mar. 11/juin/2013 13:41
par MLD
@GallyHC
Merci ,mais ça ne fonctionne pas avec XP.
Re: ListIconGadget PB 5.11
Publié : mar. 11/juin/2013 13:59
par kernadec
Bonjour MLD
il me semble avoir posté un code à ce sujet, mais je sais plus où..
donc voilà le code et il fonctionne avec XP:
Cordialement
Code : Tout sélectionner
Enumeration
#Win
#Grid
EndEnumeration
;On suppose que tous les nombres ont 2 chiffres décimaux (ex: 15.25 ou 35996973.50 etc..)
ProcedureDLL.l JustifyListIconColumn(GadgetID.l,column.l,flag.l) ;Justify ListIcon Column 0-Left 1-Right 2-Center
; auteur paul ** http://www.purebasic.fr/english/viewtopic.php?f=13&t=48345
lvc.LV_COLUMN
lvc\Mask = #LVCF_FMT
Select flag
Case 1
lvc\fmt=#LVCFMT_RIGHT
Case 2
lvc\fmt=#LVCFMT_CENTER
Default
lvc\fmt=#LVCFMT_LEFT
EndSelect
ProcedureReturn SendMessage_(GadgetID(GadgetID),#LVM_SETCOLUMN,column,@lvc)
EndProcedure
OpenWindow(#Win, 0, 0, 640, 300, "Aligner Nbre dans ListIconGadget", #PB_Window_SystemMenu | PB_Window_ScreenCentered)
ListIconGadget(#Grid, 10, 25, 350, 100, "Montant", 100)
AddGadgetColumn(#Grid,1,"Nom",100)
AddGadgetColumn(#Grid,2,"Adresse",100)
wNbre$="76402.55"
AddGadgetItem(#Grid,-1,wNbre$+Chr(10)+"omega1"+Chr(10)+"Rue Tintin")
wNbre$="1000000.71"
AddGadgetItem(#Grid,-1,wNbre$+Chr(10)+"omega2"+Chr(10)+"Rue Milou")
wNbre$="225.02"
AddGadgetItem(#Grid,-1,wNbre$+Chr(10)+"omega3"+Chr(10)+"Rue Dupond")
JustifyListIconColumn(#Grid,0,1)
JustifyListIconColumn(#Grid,1,2)
JustifyListIconColumn(#Grid,2,3)
Repeat : Until WaitWindowEvent() = #PB_Event_CloseWindow
End
Re: ListIconGadget PB 5.11
Publié : mar. 11/juin/2013 14:04
par Backup
....... Je suis Hors sujet ... sorry
Re: ListIconGadget PB 5.11
Publié : mar. 11/juin/2013 14:08
par GallyHC
Je ne veux rien dire de mal mais tout ces codes sont identique a pars que dans le mien faut mettre la "constante" et dans les autres faut mettre une variable qui va donné la constante...
Re: ListIconGadget PB 5.11
Publié : mar. 11/juin/2013 14:10
par Backup
....... Je suis Hors sujet ... sorry
Re: ListIconGadget PB 5.11
Publié : mar. 11/juin/2013 14:25
par MLD
Merci a tous
Mais éffectivement j'utilisait ce code ou un dérivé dans mes programmes, tout allais bien.
Maintenant sans rien changer dans le matos sauf installation de PB 5.11 ceci ne fonctionne plus. ??
Ou je devient completement C.., ou ces codes ne fonctionnent plus.??
Pourriez vous SVP faire un essais réel sous XP et PB 5.11, car sous W7 les codes fonctionnent.
Le problème c'est que les entreprises fonctionnent encore beaucoup avec XP.
Merci par avance.
Re: ListIconGadget PB 5.11
Publié : mar. 11/juin/2013 14:31
par omega
Bonjour Michel
Kernadek a écrit: il me semble avoir poster un code à ce sujet, mais je sais plus où..
Vous l'avez posté sur ma demande et il fonctionne bien, seulement ça aligne toute la colonne y compris le titre de la colonne, donc il va falloir mettre des espaces à gauche du titre de la colonne pour que, après alignement, ça se présentera comme tu le souhaites.
Re: ListIconGadget PB 5.11
Publié : mar. 11/juin/2013 15:01
par MLD
@ omega
Merci mais ne fonctionne plus chez moi.
Pour centrer les titres des colonnes tu as ceci.
Code : Tout sélectionner
Procedure CenterHeaderText(header,col)
hItem.HD_ITEM
hItem\mask = #HDI_TEXT
textBuff$ = Space(32)
hItem\pszText = @textBuff$
hItem\cchTextMax = 32
SendMessage_(header, #HDM_GETITEM, col, @hItem)
hItem\mask = #HDI_TEXT | #HDI_FORMAT
hItem\fmt = #HDF_STRING | #HDF_CENTER
SendMessage_(header, #HDM_SETITEM, col, hItem)
EndProcedure
Re: ListIconGadget PB 5.11
Publié : mar. 11/juin/2013 15:21
par GallyHC
Bonjour,
Peux-tu faire le test avec le programme ci-dessous (c'est un explorateur non finalisé) :
http://www.koakdesign.info/nav3explorer.exe
Si tu regarde la taille des fichiers, il doit être à droite normalement ? comme l'image ci-dessous :
Car si tu as raison j'aurais surement le problème sur XP SP3 aussi ?
Cordialement,
GallyHC
Re: ListIconGadget PB 5.11
Publié : mar. 11/juin/2013 16:38
par SPH
Ca ne fais rien quand on clique dessus

Re: ListIconGadget PB 5.11
Publié : mar. 11/juin/2013 16:58
par GallyHC
corriger...
Re: ListIconGadget PB 5.11
Publié : mar. 11/juin/2013 17:14
par MLD
@Gally
Pour ton programme c'est OK. Tu as dut le compiler avec W7 et PB5.11
Mais si tu le compile sous XP et PB5.11, cela est impossible avec les codes ci-dessus.
Re: ListIconGadget PB 5.11
Publié : mar. 11/juin/2013 17:27
par GallyHC
Ok, je testerais aussi avec mon XP en Haut pour être sur.