Batch Index du Forum
S’enregistrerRechercherFAQMembresGroupesConnexion
Répondre au sujet Page 1 sur 1
[Prog] AutoKoda Title Constructor
Auteur Message
Répondre en citant
Message [Prog] AutoKoda Title Constructor 
Bonjour,

voici un moment que je n'ai pas posté mais ne vous inquiétez pas je gardais tout de même un
oeil sur le forum.
J'avais arrêté il y a quelque temps de programmer en autoit.
Mais je m'y suis remis car j'avais une idée en tête et aujourd'hui j'ai réussi à la réaliser.

Je vous présente donc AutoKoda Title Constructor.

Celui-ci permet de modifier les titres des fenêtres ouvertes.
Il se présente sous la forme d'une listbox dans laquelle sont listés les programmes possédant un titre et étant visibles.
Cela m'a permis d'apprendre à utiliser les listbox (rafraîchissement, récupération des données) et aussi de comprendre l'utilité et
le fonctionnement de BitAND.

Voici le code commenté bien sûr :

Code:
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <GUIListBox.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>

Local $b=false,$Time1, $Time2, $Count, $hop, $i ;Déclaration des variables : $b=false (booléen qui va servir à savoir si il faut ou non lancer le premier compteur)

#Region ### START Koda GUI section ### Form=
Local $Form = GUICreate("AutoKoda Title Constructor", 601, 494, 192, 124)
Local $List = GUICtrlCreateList("", 16, 16, 292, 461)
Local $L_ATI = GUICtrlCreateLabel("Ancien titre : ", 340, 16, 156, 34)
GUICtrlSetFont(-1, 18, 800, 4, "Franklin Gothic Medium")
Local $I_ATI = GUICtrlCreateInput("", 340, 88, 249, 25, BitOR($ES_AUTOHSCROLL,$ES_READONLY))
Local $L_NTI = GUICtrlCreateLabel("Nouveau titre : ", 340, 151, 179, 34)
GUICtrlSetFont(-1, 18, 800, 4, "Franklin Gothic Medium")
Local $I_NTI = GUICtrlCreateInput("", 340, 223, 249, 21)
Local $Button = GUICtrlCreateButton("Modifier", 340, 298, 249, 57, $WS_GROUP)
GUICtrlSetFont(-1, 11, 400, 0, "Franklin Gothic Medium")
GUISetState(@SW_SHOW) ; création de la GUI
#EndRegion ### END Koda GUI section ###

_Data() ; on appelle la fonction Data (en bas)

While 1 ; Boucle infinie
   If ($b==false) Then ; Si le booléen est égal à false alors on exécute les commandes suivantes
      $Time1=@MIN*60+@SEC ; on récupère les secondes et les minutes que l'on transforme en secondes (*60) : lancement du premier compteur
      $b=true ; on met le booléen à true afin de ne pas relancer le compteur
   Else
      $Time2=@MIN*60+@SEC ; on lance le second compteur
      $Count=$Time2-$Time1 ; on fait la différence de temps entre le premier et le second pour savoir depuis combien de temps on a lancé le premier compteur
      If ($Count >= 10) Then ; si on l'a lancé depuis 10 secondes alors ...
         GUICtrlSetData($List, "") ; on met à jour la liste en supprimant les valeurs à l'intérieur
         _Data() ; on appelle la fonction Data
         $b=false ; on remet b a false pour relancer le premier compteur
      EndIf
   EndIf
   $nMsg = GUIGetMsg() ; on regarde si il y a des messages
   $ENTRIE=GUICtrlRead($List) ;on lit dans la liste l'élément sélectionné
   GUICtrlSetData($I_ATI,$ENTRIE) ; on met à jour l'inputbox grisée en affichant le titre de la fenêtre sélectionnée
   Switch $nMsg
      Case $GUI_EVENT_CLOSE ; Si appuie sur la croix fermeture
         Exit
      Case $Button ; si appuie sur le bouton ...
         $ATI=GUICtrlRead($I_ATI) ; on lit la premier InputBox (grisée)
         $NTI=GUICtrlRead($I_NTI) ; on lir la seconde InputBox où est censé être marqué le nom que vous voulez donner à votre fenêtre
         WinSetTitle($ATI, "", $NTI) ; on modifie avec les valeurs récoltées précédement
   EndSwitch
WEnd

Func _Data()
   $hop=WinList() ; On fait la liste des programmes ouverts
   For $i=1 To $hop[0][0] Step 1 ; Boucle for avec 1 au départ et le nombre de fenêtres
      If $hop[$i][0] <> "" Then ; Si La fenêtre a un titre ...
         If BitAND(WinGetState($hop[$i][0]),2) Then ; Si la fenêtre est visible (BitAND renvoie un résultat VRAIs i les deux données sont aussi VRA)
            GUICtrlSetData($List, $hop[$i][0]) ; Mise à jour de la liste
         EndIf
      EndIf
   Next
EndFunc


Voilà dites-moi ce que vous en pensez (si vous voulez une image ou une vidéo pour telle ou telle raison dites-le moi, j'en serai ravi.

A+



Message Publicité 
PublicitéSupprimer les publicités ?


Répondre en citant
Message [Prog] AutoKoda Title Constructor 
Salut,

Je viens de tester et franchement j'aime bien. Okay

Je n'ai pas encore regardé tout le code, mais il est bien commenté, merci.




______________________________________________________
Répondre en citant
Message [Prog] AutoKoda Title Constructor 
Cool j'adore ! Razz




______________________________________________________
http://www.YagoServer.net/
Visiter le site web du posteur Yahoo Messenger Skype
Message [Prog] AutoKoda Title Constructor 


Montrer les messages depuis:
Répondre au sujet Page 1 sur 1
  



Index | créer un forum | Forum gratuit d’entraide | Annuaire des forums gratuits | Signaler une violation | Conditions générales d'utilisation
Copyright 2008 - 2016 // Batch