Page 1 sur 1
[..] Recupérer les données d'un tableau
Posté : lun. 26 mai 2014 22:06
par Elwyios
Bonjour, je tiens déjà a m'excuser si la réponse est sur le forum mais je l'ai pas trouver.
Je voudrais savoir comment récupérer dans une variable un élément du tableau (Sachant que les éléments n'y sont pas de base mais ajouter par l'utilisateur)
Exemple : "Manuelle" & "|" & "Lapelle"
Pouvoir récupérer dans deux variables Manuelle et Lapelle
Merci d'avance
Re: [..] Recupérer les données d'un tableau
Posté : lun. 26 mai 2014 22:15
par jguinch
Quand tu parles de tableau, tu parles de listview non ?
Sinon, tu peux utiliser StringSplit tout simplement :
Code : Tout sélectionner
$sText = "Manuelle" & "|" & "Lapelle"
$aValues = StringSplit($sText, "")
For $i = 1 To $aValues[0]
ConsoleWrite($aValues[$i] & @CRLF)
Next
Re: [..] Recupérer les données d'un tableau
Posté : lun. 26 mai 2014 22:15
par Elwyios
Oui de ListView
Re: [..] Recupérer les données d'un tableau
Posté : lun. 26 mai 2014 22:21
par jguinch
OK, donc une listview est un contrôle de type Listview (un élément graphique d'une fenêtre).
Un tableau est une variable de type Array, qui peut contenir plusieurs valeurs ordonnées. Voir la doc dans Language Reference / Variables : Arrays
Sinon, est-ce que le code que je t'ai proposé est clair ?
Re: [..] Recupérer les données d'un tableau
Posté : lun. 26 mai 2014 22:26
par Elwyios
Code : Tout sélectionner
#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include <ListViewConstants.au3>
#include <WindowsConstants.au3>
#Region ### START Koda GUI section ### Form=
Global $Form1 = GUICreate("Form1", 482, 181, 192, 124)
Global $ListView1 = GUICtrlCreateListView("Nom|Prénom|Age", 8, 8, 465, 105)
GUICtrlSendMsg(-1, $LVM_SETCOLUMNWIDTH, 0, 150)
GUICtrlSendMsg(-1, $LVM_SETCOLUMNWIDTH, 1, 150)
GUICtrlSendMsg(-1, $LVM_SETCOLUMNWIDTH, 2, 50)
Global $Button1 = GUICtrlCreateButton("Ajouter une personne", 8, 128, 465, 33)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $Button1
$nom = InputBox("", "nom")
$prenom = InputBox("", "prenom")
$age = InputBox("", "age")
GUICtrlCreateListViewItem($nom & '|' & $prenom & '|' & $age, $ListView1)
EndSwitch
WEnd
J'ai fais un petit test vite fais, en gros, les gens ajoutent des personnes, et je souhaite récuperer certaines infos (Exemple : A la ligne 2, je souhaite savoir l'age)
Je n'ai pas compris en quoi ton code me serai utile

Re: [..] Recupérer les données d'un tableau
Posté : lun. 26 mai 2014 22:46
par jguinch
Regarde ce code, et dis-moi si c'est ce que tu cherches à faire : (j'ai mis en évidence les modifications avec ;======)
► Afficher le texte
Code : Tout sélectionner
#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include <ListViewConstants.au3>
#include <WindowsConstants.au3>
#Region ### START Koda GUI section ### Form=
Global $Form1 = GUICreate("Form1", 482, 181, 192, 124)
Global $ListView1 = GUICtrlCreateListView("Nom|Prénom|Age", 8, 8, 465, 105)
GUICtrlSendMsg(-1, $LVM_SETCOLUMNWIDTH, 0, 150)
GUICtrlSendMsg(-1, $LVM_SETCOLUMNWIDTH, 1, 150)
GUICtrlSendMsg(-1, $LVM_SETCOLUMNWIDTH, 2, 50)
Global $Button1 = GUICtrlCreateButton("Ajouter une personne", 8, 128, 200, 33)
; ========================================================================
Global $Button2 = GUICtrlCreateButton("Voir", 220, 128, 200, 33)
; ========================================================================
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $Button1
$nom = InputBox("", "nom")
$prenom = InputBox("", "prenom")
$age = InputBox("", "age")
GUICtrlCreateListViewItem($nom & '|' & $prenom & '|' & $age, $ListView1)
; ========================================================================
Case $Button2
$select = GUICtrlRead( GUICtrlRead($ListView1) )
ConsoleWrite($select & @CRLF)
If $select Then
$avalues = StringSplit($select, "|")
MsgBox(0, "Valeurs", "Nom : " & $avalues[1] & @CRLF & _
"Prenom : " & $avalues[2] & @CRLF & _
"Age : " & $avalues[3] )
EndIf
; ========================================================================
EndSwitch
WEnd
Re: [..] Recupérer les données d'un tableau
Posté : lun. 26 mai 2014 23:01
par Elwyios
Oui voilà c'est quasiment ça, mais je ne souhaite pas cliquer mais entrez un nombre qui correspond à la ligne de la ListView
Re: [..] Recupérer les données d'un tableau
Posté : mer. 28 mai 2014 15:36
par Elwyios
Toujours pas trouvé :s