Page 1 sur 1
[R] Comment afficher un tableau dans une GUI
Posté : mar. 07 avr. 2009 16:46
par bouba91300
Bonjour,
Je souhaite afficher dans une listview un tableau 2D. Je n'ai jamais utiliser les objets GUI et je ne sais pas par quoi commencer.
Pour information le tableau 2D est le résultat d'une feuille Excel de A->E et de 1-> 10.
Merci.
Laurent
Re: [..] Comment afficher un tableau dans une GUI
Posté : mar. 07 avr. 2009 16:54
par Yogui
Exemple
► Afficher le texte
Code : Tout sélectionner
#include <GUIConstantsEx.au3>
#include <ListViewConstants.au3>
#include <WindowsConstants.au3>
#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Form1", 444, 447, 193, 125)
$ListView1 = GUICtrlCreateListView("A|B|C|D|E", 88, 48, 257, 337)
Ctrl SendMsg(-1, 0x101E, 0, 50)
Ctrl SendMsg(-1, 0x101E, 1, 50)
Ctrl SendMsg(-1, 0x101E, 2, 50)
Ctrl SendMsg(-1, 0x101E, 3, 50)
Ctrl SendMsg(-1, 0x101E, 4, 50)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
GUICtrlCreateListView Item("1|12354|1235|1569|1259", $listview1)
GUICtrlCreateListView Item("2|12354|1235|1569|1259", $listview1)
GUICtrlCreateListView Item("3|12354|1235|1569|1259", $listview1)
GUICtrlCreateListView Item("4|12354|1235|1569|1259", $listview1)
GUICtrlCreateListView Item("5|12354|1235|1569|1259", $listview1)
GUICtrlCreateListView Item("6|12354|1235|1569|1259", $listview1)
GUICtrlCreateListView Item("7|12354|1235|1569|1259", $listview1)
GUICtrlCreateListView Item("8|12354|1235|1569|1259", $listview1)
GUICtrlCreateListView Item("9|12354|1235|1569|1259", $listview1)
GUICtrlCreateListView Item("10|12354|1235|1569|1259", $listview1)
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
EndSwith
WEndy
edit car envoie un peu rapide
utilisez Koda (sous SciTe Alt M) pour faire le tableau ensuite vos données doivent être insérés par ligne "|" étant le séparateur de colonnes à l'aide par exemple d'une boucle for
Re: [..] Comment afficher un tableau dans une GUI
Posté : mar. 07 avr. 2009 16:59
par bouba91300
Merci Yogui,
mais plutôt que de remporte à la main avec la fonction "GUICtrlCreateListViewItem" les entrées dans la gui je cherche comment passer mon tableau 2D. du syle GUICtrlCreateListViewItem = $Nom_Tab_2D
Re: [..] Comment afficher un tableau dans une GUI
Posté : mar. 07 avr. 2009 17:42
par Yogui
j'avais bien deviné ce n'est qu'un exemple
en fait il faut extraire les données du tableau ligne par ligne puis pour chaques ligne mettre dans une variable le champ séparés par des "|" puis insérer dans la tableau
c'est vrai que dit comme ça c'est compliqué
Mais avec deux boucle for ça doit pouvoir se faire je test avec un tableau
Re: [..] Comment afficher un tableau dans une GUI
Posté : mar. 07 avr. 2009 18:03
par Yogui
► Afficher le texte
Code : Tout sélectionner
#include <GUIConstantsEx.au3>
#include <ListViewConstants.au3>
#include <WindowsConstants.au3>
#include <array.au3>
Dim $array[5][5]
$array[0][1] = "01"
$array[0][2] = "02"
$array[0][3] = "03"
$array[0][4] = "04"
$array[1][1] = "11"
$array[1][2] = "12"
$array[1][3] = "13"
$array[1][4] = "14"
$array[2][1] = "21"
$array[2][2] = "22"
$array[2][3] = "23"
$array[2][4] = "24"
dim $data
#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Form1", 444, 447, 193, 125)
$ListView1 = GUICtrlCreateListView("A|B|C|D|E", 88, 48, 257, 337)
GUICtrlSendMsg(-1, 0x101E, 0, 50)
GUICtrlSendMsg(-1, 0x101E, 1, 50)
GUICtrlSendMsg(-1, 0x101E, 2, 50)
GUICtrlSendMsg(-1, 0x101E, 3, 50)
GUICtrlSendMsg(-1, 0x101E, 4, 50)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
for $i = 0 to 4 Step 1
for $j = 0 to 4 Step 1
;~ MsgBox(0,"ligne",$array[$i][$j])
$data = $array[$i][$j]&"|"&$data
Next
GUICtrlCreateListViewItem($data, $ListView1)
$data =""
Next
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
EndSwitch
WEnd
voilà l'exemple
Re: [..] Comment afficher un tableau dans une GUI
Posté : mar. 07 avr. 2009 18:34
par bouba91300
Merci beaucoup Yogui, c'est exactement ce que je voulais. J'avais pas pensé qu'il fallait passer ton son tableau en revu pour le mettre dans la gui ...
Merci encore.
A+
Re: [..] Comment afficher un tableau dans une GUI
Posté : mar. 07 avr. 2009 18:49
par GaRydelaMer
Bonsoir
la méthode la plus rapide consiste a utiliser la fonction: _GUICtrlListView_AddArray()
#include <GuiListView.au3>
Voir l'aide pour la syntaxe et exemples
Re: [..] Comment afficher un tableau dans une GUI
Posté : mar. 07 avr. 2009 19:55
par Yogui
je n'utilise pas assez les includes
merci Gary
Re: [..] Comment afficher un tableau dans une GUI
Posté : mar. 07 avr. 2009 20:20
par GaRydelaMer
Une lacune que je suis content de combler.
Les UDF sont la pour ça, ne pas réinventer la roue

Re: [..] Comment afficher un tableau dans une GUI
Posté : mer. 08 avr. 2009 15:01
par bouba91300
Merci Yogui et GaRydelaMer pour toutes ses informations et moi aussi il faut que je me "force" à utiliser les Includes.
A+
Laurent.