Bonjour à tous,
J'espère que la présentation du message sera correcte...
ça fait un moment que je ne m'étais pas replongé dans cet "arrachage" de cheveux qu'est la programmation.
Voilà malgé mes recherche sur le forum, je n'ai pas trouvé, ou du moins pas clairement, de solution qui m'ont permit d'avancer.
En fait, j'essaye simplement de récupérer des informations contenues dans un fichier ini via IniReadSection et de les faire apparaitre dans une liste sur une GUI.
Cette première étape fonctionne. Ma liste se remplie correctement avec les données du fichier ini.
Mon soucis est que je n'arrive pas à associer les deux colonnes comprises dans la section de mon fichier ini; dans mons cas, la couleur avec la pierre:
► Afficher le textele fichier ini
Code : Tout sélectionner
[COULEUR]
rubis=rouge
saphir=bleu
diamant=blanc
emeraude=vert
Mon code est le suivant:
► Afficher le textele code
Code : Tout sélectionner
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <GUIListBox.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#include <Process.au3>
;----------VARIABLES------------------------------------------------
Global $info
Global $LST01
;-------------------------------------------------------------------
Opt("GUIOnEventMode", 1)
If Not FileExists("sylnet.ini") Then
MsgBox(48, "INI ?", "La bibliothèque de contact n'a pas été trouvée.")
Exit
EndIf
$info = IniReadSection("Test.ini", "COULEUR")
If @error Then
MsgBox(16, "paramètre incorrect", "Le fichier INI ne contient pas de section [COULEUR].")
Exit
EndIf
;----------GUI------------------------------------------------------
$Test = GUICreate("Test", 245, 361, 198, 136)
GUISetOnEvent($GUI_EVENT_CLOSE, "annuler") ;Fermeture avec la p'tite croix
$LST01 = GUICtrlCreateList("", 40, 16, 161, 253)
For $i = 1 To $info[0][0]
GUICtrlSetData($LST01, $info[$i][0])
Next
$Button1 = GUICtrlCreateButton("OK", 40, 304, 161, 33, $WS_GROUP)
GUICtrlSetOnEvent($Button1, "afficher")
GUISetState(@SW_SHOW)
;-------------------------------------------------------------------
While 1
$msg = GUIGetMsg()
If $msg = $GUI_EVENT_CLOSE Then ExitLoop
Wend
;----------FONCTIONS------------------------------------------------
Func Annuler()
Exit
EndFunc
;-------------------------------------------------------------------
Func afficher()
$pierre = GUICtrlRead($LST01)
$couleur = GUICtrlRead($info[$pierre][1])
msgbox(0,"Test","la couleur de " & $pierre & " est " & $couleur & ".")
EndFunc
;-------------------------------------------------------------------
Voilà, j'aimerai que ma msgbox m'affiche les informations du fichier ini (bien-sûr, ces informations seront utilisés autrement, mais là, c'est juste pour l'exemple)
L'idéale serait de pouvoir même selectionner une ou plusieurs pierre dans la liste et que la msgbox affiche une ligne par réponse...
Merci d'avance pour votre aide.
Maf