Moin,
ich bin neu bei AutoIT (habe bisher nur mit Delphi gearbeitet) und habe aktuell Probleme beim erstellen der GUI bzw. Zugriff auf dessen da ich bisher in Delphi dies eher in der "luxus Variante" erstellen konnte.
C
#include <Constants.au3>
#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <EditConstants.au3>
#include <StaticConstants.au3>
#include <Date.au3>
#include <File.au3>
#include <Array.au3>
Dim $ExcelP, $InstallP, $ProgrammP
gui()
Opt("GUIOnEventMode", 1) ; Change to OnEvent mode
sleep(15000)
Func gui() ;GUI erstellen
$Toolbox = GUICreate("Toolbox", 1400, 800,-1,-1,-1) ;Fenster definiren
GUISetBkColor(0x444444) ;change background color
;~ GUISetState(@SW_SHOWMAXIMIZED) ;Fenster maximieren
Local $Tab = GUICtrlCreateTab(0,0,1400,800) ;Tabs erstellen
GUICtrlCreateTabItem("Programme") ;Programme aus definierten Pfad auslesen (Ordnernamen) und hier einfügen !!!!!!!!!!!!!!!!!
GUICtrlSetState(-1, $GUI_SHOW) ; will be display first
$Tools = GUICtrlCreateList("",0,20,400,200)
GUICtrlCreateTabItem("Filialen")
$LadenF = GUICtrlCreateButton("Laden", 600, 20, 80, 40)
GUICtrlSetOnEvent($LadenF, "LadenF")
$SpeichernF = GUICtrlCreateButton("Speichern", 720, 20, 80, 40)
GUICtrlSetOnEvent($SpeichernF, "SpeichernF")
$Settings = GUICtrlCreateTabItem("Einstellungen")
GUICtrlSetOnEvent($Settings, "BackupS")
$ExcelPfad = GUICtrlCreateInput("",600, 100, 500, 20,-1,-1)
GUICtrlSetData($ExcelPfad, "Pfad_und_Dateiname_wegen_Sicherheit_raus_genommen.xlsm")
GUICtrlCreateLabel("Hier den Pfad zur Exceldatei angeben:", 350, 105, 250, 20)
$ProgrammPfad = GUICtrlCreateInput("",600, 140, 500, 20,-1,-1)
GUICtrlSetData($ProgrammPfad, "C:\Software\Originale\")
GUICtrlCreateLabel("Hier den Pfad zu den Programmen angeben:", 350, 145, 250, 20)
$InstallPfad = GUICtrlCreateInput("",600, 180, 500, 20,-1,-1)
GUICtrlSetData($InstallPfad, "C:\Software\Installation\")
GUICtrlCreateLabel("Hier den Pfad zum Installationsordner angeben:", 350, 185, 250, 20)
$SpeichernE = GUICtrlCreateButton("Speichern", 720, 220, 80, 40)
GUICtrlSetOnEvent($SpeichernE, "SpeichernE")
$AbbrechenE = GUICtrlCreateButton("Abbrechen", 600, 220, 80, 40)
GUICtrlSetOnEvent($AbbrechenE, "AbbrechenE")
;~ $logoutput = GUICtrlCreateEdit("", 10, 10, 780, 780, $ES_AUTOVSCROLL + $WS_VSCROLL + $ES_READONLY)
;~ GUICtrlSetBkColor($logoutput, 0xffffff)
GUISetState()
EndFunc ;==>gui1
Func SpeichernE() ; Note: At this point @GUI_CtrlId would equal $SpeichernE and @GUI_WinHandle would equal $Toolbox
EndFunc ;Einstellungen Speichern
Func AbbrechenE()
GUICtrlSetData($ExcelPfad, $ExcelP)
GUICtrlSetData($ProgrammPfad, $ProgrammP)
GUICtrlSetData($InstallPfad, $InstallP)
EndFunc ;Einstellungen Abbrechen
Func LadenF()
EndFunc ;Filialen (Excel) Laden
Func SpeichernF()
EndFunc ;Filialen (Excel) Speichern
Func BackupS()
$ExcelP = GUICtrlRead($ExcelPfad)
$ProgrammP = GUICtrlRead($ProgrammPfad)
$InstallP = GUICtrlRead($InstallPfad)
EndFunc ;Backup der Einstellungen für Abbruch beim öffnen des "Einstellungen" Tab
Alles anzeigen
Mein Problem dabei ist, das er immer sagt, das Variablen undefiniert seien wenn ich auf "Abbrechen" Klicke. Ich gehe davon aus, das dies $ExcelP, $ProgrammP und $InstallP betrifft. Was mache ich falsch?
Nicht wundern: Aktuell wird nur die GUI erzeugt (das was schon drin ist) und nach 15 Sekunden das Programm beendet.