Hey,
hatte ein bisschen langeweile in der letzten Stunde. Und da hat mir ein "Entscheider" - Script von einem AutoIt Forum User - gesagt, dass ich ein Telefonbuch programmieren soll.
Gesagt getan. Hier ist das Telefonbuch; sicher noch nicht fertig aber Langeweile überbrückt.
Spoiler anzeigen
;Telefonbuch
#include <GuiConstantsEx.au3>
#include <String.au3>
;Konstrolle von data.ini
If Not FileExists ( @ScriptDir & "\data.ini" ) Then
IniWrite ( "data.ini", "ID", "Nummer", "0" )
IniWrite ( "data.ini", "List", "", "" )
EndIf
;Kontrolle von data.ini Ende
#Region
;GUI MAIN-FENSTER
$gui = GUICreate ( "Telefonbuch", 600, 400 )
$b_del = GUICtrlCreateButton ( "Löschen", 58, 120, 80, 30 )
$b_s = GUICtrlCreateButton ( "Search", 58, 165, 80, 30 )
$b_add = GUICtrlCreateButton ( "Add", 58, 210, 80, 30 )
$b_adel = GUICtrlCreateButton ( "Alle Löschen", 58, 255, 80, 30 )
$b_list = GUICtrlCreateButton ( "List", 58, 300, 80, 30 )
$b_clear = GUICtrlCreateButton ( "Clear", 58, 345, 80, 30 )
$list = GUICtrlCreateList("", 200, 100, 390, 290)
GUICtrlSetLimit(-1, 200 )
GUICtrlSetData(-1, "" )
GUISetState ( @Sw_show )
;GUI MAIN-FENSTER ENDE
#EndRegion
;List
If FileExists ( @ScriptDir & "\data.ini" ) Then
$list_show = IniReadSection ( @ScriptDir & "\data.ini", "List" )
For $i = 1 To $list_show[0][0]
GUICtrlSetData($list, $list_show[$i][1] )
Next
EndIf
;List Ende
;$GUI_EVENT_CLOSE ( "X"-Button )
_main()
Func _main()
While 1
;Var
Local $id = IniRead ( "data.ini", "ID", "Nummer", "NotFound" )
;Var Ende
$nMsg = GUIGetMsg()
If $nMsg = $GUI_EVENT_CLOSE Then
Exit
EndIf
;$GUI_EVENT_CLOSE ( "X"-Button ) ende
;Main() Code
;Nummer/Name Hinzufügen
Switch $nMsg
Case $b_add
GUICtrlSetData($list, "" )
$n = InputBox ( "Hinzufügen", "Name eingeben:" )
$name = _stringProper ( $n )
GUICtrlSetData($list, "Name: " & $name )
If @error Then
Exit
ElseIf $name = "" Then
MsgBox ( 0, "Fehler", "Name darf nicht lehr sein" )
_main()
EndIf
$nummer = InputBox ( "Hinzufügen", "Nummer eingeben:" )
If @error Then
Exit
ElseIf $name = "" Then
MsgBox ( 0, "Fehler", "Nummer darf nicht lehr sein" )
_main()
EndIf
GUICtrlSetData($list, "Nummer: " & $nummer )
$S = InputBox ( "Hinzufügen", "Status eingeben ( Freund, Verwandter etc... ):" )
$Status = _StringProper ( $S )
GUICtrlSetData($list, "Status: " & $Status )
IniWrite ( "data.ini", $name, "Name", $name )
IniWrite ( "data.ini", $name, "Nummer", $nummer )
IniWrite ( "data.ini", $name, "Status", $Status )
Iniwrite ( "data.ini", "ID", "Nummer", $id + 1 )
Iniwrite ( "data.ini", $name, "ID", $id )
Iniwrite ( "data.ini", "List", $id, $name & " " & $nummer & " " & $Status)
;Nummer/Name Hinzufügen ende
;Name Suchen
Case $b_s
GUICtrlSetData($list, "" )
$n = InputBox ( "Suche", "Name eingeben: " )
$name = _StringProper ( $n )
$ininame = IniRead ( "data.ini", $name, "Name", "" )
$ininummer = IniRead ( "data.ini", $name, "Nummer", "" )
$inistatus = IniRead ( "data.ini", $name, "Status", "" )
If $ininame and $ininummer = True Then
GUICtrlSetData($list, "Name: " & $name )
GUICtrlSetData($list, "Nummer: " & $ininummer )
GUICtrlSetData($list, "Status: " & $inistatus )
Else
MsgBox ( 4096, "Fehler", "Name wurde nicht gefunden!" )
EndIf
;Name Suchen ende
;Löschen eines Eintrags
Case $b_del
GUICtrlSetData($list, "" )
$name = Inputbox ( "Löschen", "Name eingeben: " )
$ininame = IniRead ( "data.ini", $name, "Name", "" )
$iniid = IniRead ( "data.ini", $name, "ID", "" )
IniDelete ( "data.ini", $name )
IniWrite ( "data.ini", "List", $iniid, "" )
If $ininame = True Then
GUICtrlSetData($list, $name & " wurde erfolgreich gelöscht!" )
Else
MsgBox ( 0, "Fehler", "Der Eintrag " & $name & " ist nicht vorhanden!" )
EndIf
;Löschen eines Eintrags ende
;Löschen aller Einträge
Case $b_adel
FileDelete ( @ScriptDir & "\data.ini" )
GUICtrlSetData($list, "Alle Einträge wurden gelöscht!" )
;Löschen aller Einträge ende
;Auflisten der Namen/Nummern/Staten
Case $b_list
$list_sh = IniReadSection ( @ScriptDir & "\data.ini", "List" )
For $i = 1 To $list_sh[0][0]
GUICtrlSetData($list, $list_sh[$i][1])
Next
;Auflisten der Namen/Nummern/Staaten
;Löschen des Fensters
Case $b_clear
GUICtrlSetData ( $list, "" )
;Löschen des Fensters Ende
EndSwitch
WEnd
EndFunc
Tipps und Kritik sind erwünscht.
mfG