Code : Tout sélectionner
#include <ButtonConstants.au3>
#Include <GuiComboBox.au3>
#include <ComboConstants.au3>
#include <file.au3>
#include <EditConstants.au3>
#include <GuiEdit.au3>
#include <GUIConstantsEx.au3>
#include <GuiStatusBar.au3>
#include <GUIListBox.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#include <array.au3>
; création des chemins d'acces temporaires
Global $base_logo = @ScriptDir & "\logo_base.jpg"
; declaration du fichier temporaire (dossier dans lequel les fichiers ini sont enregistrés
#Region ### choix du client
$Gui_choix_client = GUICreate("Choix du client", 522, 194, -1, -1)
GUISetBkColor(0xA6CAF0)
GUICtrlCreateGroup("Choisir la société", 5, 8, 508, 73, $BS_CENTER)
GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif")
$Cmb_choix_client = GUICtrlCreateCombo("", 13, 34, 488, 25)
GUICtrlSetFont(-1, 14, 400, 0, "MS Sans Serif")
GUICtrlCreateGroup("", -99, -99, 1, 1)
$Cancel_gui_client = GUICtrlCreateButton("Annuler", 5, 160, 250, 25, $WS_GROUP)
GUICtrlSetFont(-1, 12, 800, 0, "MS Sans Serif")
$Next_Gui_Client = GUICtrlCreateButton("Suivant", 265, 160, 250, 25, $WS_GROUP)
GUICtrlSetFont(-1, 12, 800, 0, "MS Sans Serif")
Global $logo_society_client_POSITION[4] = [160, 88, 204, 60]
Global $logo_society_client = GUICtrlCreatePic($base_logo, _
$logo_society_client_POSITION[0], $logo_society_client_POSITION[1], $logo_society_client_POSITION[2], $logo_society_client_POSITION[3], _
BitOR($SS_NOTIFY,$WS_GROUP,$WS_CLIPSIBLINGS), $WS_EX_CLIENTEDGE)
GUISetState(@SW_SHOW)
Dim $Gui_choix_client_AccelTable[2][2] = [["{ESC}", $Cancel_gui_client],["{ENTER}", $Next_Gui_Client]]
GUISetAccelerators($Gui_choix_client_AccelTable)
#EndRegion ### END Koda GUI section ###
Global $client_name; Lire la combobox client
Global $logo_society ; emplacement du logo par defaut.
_initial_folder_client_read()
_Guiintro_choix_clients()
Func _Guiintro_choix_clients()
GUISetState(@SW_SHOW, $Gui_choix_client)
While 1
$nMsg = GUIGetMsg(1)
Select
Case $nMsg[0] = $GUI_EVENT_CLOSE And $nMsg[1] = $Gui_choix_client
Exit
Case $nMsg[0] = $Cancel_gui_client And $nMsg[1] = $Gui_choix_client
Exit
Case $nMsg[0] = $Cmb_choix_client And $nMsg[1] = $Gui_choix_client
If GUICtrlRead($Cmb_choix_client) = "(Aucun)" Then
Sleep(50)
Else
_changelogo()
EndIf
EndSelect
WEnd
EndFunc
#endregion
Func _initial_folder_client_read()
Dim $list_folder_client = _FileListToArray(@ScriptDir & "\", "*", 2)
GUISetState(@SW_SHOW, $Gui_choix_client)
GUICtrlSetData($Cmb_choix_client, "")
GUICtrlSetData($Cmb_choix_client, "(aucun)", "(aucun)")
For $list = 1 To $list_folder_client[0]
GUICtrlSetData($Cmb_choix_client, $list_folder_client[$list])
Next
EndFunc
func _changelogo()
$client_name = GUICtrlRead($Cmb_choix_client); Lire la combobox client
$logo_society = @ScriptDir & "\" & GUICtrlRead($Cmb_choix_client) & "\logo.jpg" ; emplacement du logo par defaut.
If Not FileExists($logo_society) Then $logo_society = $base_logo
Global $logo_society_client_POSITION[4] = [160, 88, 204, 60]
; Methode bourrine :
GUICtrlDelete($logo_society_client)
$logo_society_client = GUICtrlCreatePic($logo_society, _
$logo_society_client_POSITION[0], $logo_society_client_POSITION[1], $logo_society_client_POSITION[2], $logo_society_client_POSITION[3], _
BitOR($SS_NOTIFY,$WS_GROUP,$WS_CLIPSIBLINGS), $WS_EX_CLIENTEDGE)
EndFunc