Page 1 sur 1

[R] GUI, Koda, Questions de débutant

Posté : ven. 04 juil. 2008 11:24
par hck
Salutations,

J'aimerais avoir votre aide, j'ai du mal à "contrôler" KODA pour obtenir ce que je souhaite,
par exemple, j'aimerais que si on active une Checkbox, une variable passe de x à y,
qu'il n'y ai toujours qu'une checkbox de coché sur les deux,
que tel bouton me lance tel fonction, ou que telle zone de texte soit mise en variable.
Comment l'implanter dans un script, ou placer le code généré, comment quitter cette interface, etc ...

En gros, j'ai besoin d'un bon gros coup de main pour comprendre tout ça,
C'est une partie que je ne connais pas d'AutoIt, et je n'ai pas trouvé de Tutoriel là dessus sur la toile,
Merci d'avance, je suis sûr que votre aide me sera utile :]

Au plaisir,
Bye :]

Ps: Je suis débutant, j'ai bien cherché en vain, aussi bien chez vous que sur la toile, l'aide francaise ne m'a pas beaucoup aidé non plus :/

Re: [..] GUI, Koda, Questions de débutant

Posté : ven. 04 juil. 2008 14:41
par timmalos
En fait, Koda ne sert qu'a afficher une Interface graphique (GUI). Pour tout ce qui est de la gestion des evenements (quand je clique sur ca, ca lance intel, etc) il va falloir tout faire à la main. par exemple, voila un code que Koda genere(appuyer sur F9 dans koda):

Code : Tout sélectionner

#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>

#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Form1", 633, 447, 193, 125)
$Button1 = GUICtrlCreateButton("Cliquez ici!!!!!!!!!!", 176, 160, 249, 81, 0)
$Label1 = GUICtrlCreateLabel("Bonjour dans notre programme super cool!!!", 288, 56, 250, 30)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###

While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
        Case $GUI_EVENT_CLOSE
            Exit

    EndSwitch
WEnd
 
Guigetmsg recupere tous les evenements, on le place dans une boucle infinie (While 1)
Pour rajouter des evenements, on va le faire dans la partie Switch qui permet de differencier les evenements.
Le

Code : Tout sélectionner

Case $GUI_EVENT_CLOSE
            Exit
permet de ferme la fenetre si on appui sur la croix rouge.


Prenons un exemple concret: je veux que quand j'appuie sur le bouton, la fenetre affiche que le bouton a été appuyé:
Pour cela, on va rajouter:

Code : Tout sélectionner

Case $Button1
            GuiCtrlSetData($Label1,"vous avez cliqué sur le bouton")
Ce qui donne:

Code : Tout sélectionner

#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>

#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Form1", 633, 447, 193, 125)
$Button1 = GUICtrlCreateButton("Cliquez ici!!!!!!!!!!", 176, 160, 249, 81, 0)
$Label1 = GUICtrlCreateLabel("Bonjour dans notre programme super cool!!!", 288, 56, 250, 30)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###

While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
        Case $GUI_EVENT_CLOSE
            Exit
        Case $Button1
            GuiCtrlSetData($Label1,"vous avez cliqué sur le bouton")
    EndSwitch
WEnd
 
J'ai mis le code en couleur pour que tu puisse cliquer sur les fonctions et comprendre a quoi elles servent. Si tu comprend bien tout le code, c'est deja un bon debut et tu arrivera à faire ce que tu veux:)

Re: [R] GUI, Koda, Questions de débutant

Posté : ven. 04 juil. 2008 15:53
par hck
C'est parfaitement ce que je cherchais !
Je te remerci beaucoup !

Re: [..] GUI, Koda, Questions de débutant

Posté : ven. 04 juil. 2008 16:13
par Tlem
Pour Koda, il ne me semble pas avoir vu de tuto en particulier.
Koda est une interface qui permet de créer uniquement la partie graphique de vos scripts.

Une fois cette partie effectuée, il vous faudra copier le code fournit, puis le mettre dans votre script en y effectuant les modifications nécessaire pour vos besoins.

Au niveau de l'interface de Koda, comme vous l'avez sans doute déjà vu, vous avez dans la barre d'outils les principaux contrôles graphique qui peuvent être rajoutés dans votre interface.
Jusque là pas de problème particulier.
Ce qui est un peut plus intéressent, c'est 'L'Object Inspector' en bas à gauche de l'interface.
Cet outil change en fonction de l'élément sélectionné dans l'interface, et vous permet de définir les différentes propriétés du contrôle graphique en cours.
C'est dans cette partie que vous pouvez donner un nom, régler la taille, la police, le style et le style étendus de votre contrôle.

Vous pouvez utiliser l'icône de la barre d'outil avec la plus grosse flèche verte (Ou F10) pour contrôler ce que peut donner votre création.

Une fois votre interface créée et les contrôles modifiés pour vos besoins, il ne vous reste qu'à cliquer l'icône avec la petite flèche verte dans un 'carré en pointillé' (Ou F9) pour voir le code généré, et le récupérer dans le presse papier en cliquant tout simplement 'Copy to clipboard'.

Voilà.
Ça ne vaut pas un bon tuto en image, mais ça peut déjà aider.