HI Ich hab da (mal wieder) ein problem. Undzwar soll sich die Anzahl der Editboxen nach der geöffneten kartei richten. Im Moment öffnet er immer eine bestimte Anzahl an edits. Er soll diese anzahl aber aus der ini für den entsprechenden kunden nehmen. also das er die anzahl erst beim öffnen der kartei erstellt und beim speichern die anzahl an edits auch in die ini geschrieben wird.
mein versuch:
Spoiler anzeigen
#include <ScrollBarConstants.au3>
#include <GUIConstantsEx.au3>
#include <GuiButton.au3>
#include <StructureConstants.au3>
#include <GUIScrollBars.au3>
#include <GUIScroll.au3>
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <TabConstants.au3>
#include <WindowsConstants.au3>
#include <GuiTab.au3>
;Global $sIni = @ScriptDir & "\Gui.ini"
$Kundenkartei = GUICreate("Kundenkartei", 1400, 1000)
$Load = GUICtrlCreateButton("Load", 30, 16, 75, 25)
$Save = GUICtrlCreateButton("Save", 130, 16, 75, 25)
$New = GUICtrlCreateButton("New" , 230, 16, 75, 25)
$Rechnung = GUICtrlCreateButton("Rechnung", 330, 16, 75, 25)
$PageControl1 = GUICtrlCreateTab(40, 65, 1300, 900)
GUICtrlSetResizing(-1, $GUI_DOCKWIDTH + $GUI_DOCKHEIGHT)
$TabSheet1 = GUICtrlCreateTabItem("Besitzer ") ;Besitzer
$Name = GUICtrlCreateLabel("Name", 56, 128, 46, 22)
GUICtrlSetFont(-1, 12, 400, 0, "Arial")
$NameIn = GUICtrlCreateInput("", 210, 128, 329, 22)
GUICtrlSetFont(-1, 12, 400, 0, "Arial")
$Vorname = GUICtrlCreateLabel("Vorname", 56, 188, 68, 22)
GUICtrlSetFont(-1, 12, 400, 0, "Arial")
$Hausnummer = GUICtrlCreateLabel("Hausnummer", 56, 308, 96, 22)
GUICtrlSetFont(-1, 12, 400, 0, "Arial")
$weg = GUICtrlCreateLabel("Straße", 56, 248, 51, 22)
GUICtrlSetFont(-1, 12, 400, 0, "Arial")
$Postleitzahl = GUICtrlCreateLabel("Postleitzahl", 56, 368, 83, 22)
GUICtrlSetFont(-1, 12, 400, 0, "Arial")
$Ort = GUICtrlCreateLabel("Ort", 56, 428, 26, 23)
GUICtrlSetFont(-1, 12, 400, 0, "Arial")
$Tele = GUICtrlCreateLabel("Tele.", 56, 488, 39, 23)
GUICtrlSetFont(-1, 12, 400, 0, "Arial")
$Mobil = GUICtrlCreateLabel("Mobil-tele.", 56, 548, 78, 23)
GUICtrlSetFont(-1, 12, 400, 0, "Arial")
$NameIn = GUICtrlCreateInput("", 210, 128, 329, 22)
GUICtrlSetFont(-1, 12, 400, 0, "Arial")
$VornameIn = GUICtrlCreateInput("", 210, 188, 329, 22)
GUICtrlSetFont(-1, 12, 400, 0, "Arial")
$StraIn = GUICtrlCreateInput("", 210, 248, 329, 22)
GUICtrlSetFont(-1, 12, 400, 0, "Arial")
$PostleitzahlIn = GUICtrlCreateInput("", 210, 368, 329, 22)
GUICtrlSetFont(-1, 12, 400, 0, "Arial")
$OrtIn = GUICtrlCreateInput("", 210, 428, 329, 22)
GUICtrlSetFont(-1, 12, 400, 0, "Arial")
$TeleIn = GUICtrlCreateInput("", 210, 488, 329, 22)
GUICtrlSetFont(-1, 12, 400, 0, "Arial")
$MobilIn = GUICtrlCreateInput("", 210, 548, 329, 22)
GUICtrlSetFont(-1, 12, 400, 0, "Arial")
$HausnummerIn = GUICtrlCreateInput("", 210, 308, 329, 22)
GUICtrlSetFont(-1, 12, 400, 0, "Arial")
$TabSheet2 = GUICtrlCreateTabItem("Tier ") ;Tier
$TName = GUICtrlCreateLabel("Name", 56, 128, 46, 22)
GUICtrlSetFont(-1, 12, 400, 0, "Arial")
$TTierart = GUICtrlCreateLabel("Tierart", 56, 188, 49, 22)
GUICtrlSetFont(-1, 12, 400, 0, "Arial")
$TRasse = GUICtrlCreateLabel("Rasse", 56, 248, 49, 22)
GUICtrlSetFont(-1, 12, 400, 0, "Arial")
$TGb = GUICtrlCreateLabel("Geburtztag", 56, 308, 80, 22)
GUICtrlSetFont(-1, 12, 400, 0, "Arial")
$TGeschlecht = GUICtrlCreateLabel("Geschlecht", 56, 368, 81, 22)
GUICtrlSetFont(-1, 12, 400, 0, "Arial")
$TKennzeichen = GUICtrlCreateLabel("Kennzeichen", 56, 428, 93, 22)
GUICtrlSetFont(-1, 12, 400, 0, "Arial")
$TTranspondernummer = GUICtrlCreateLabel("Transpondernummer", 56, 488, 142, 21)
GUICtrlSetFont(-1, 12, 400, 0, "Arial")
$TNameIn = GUICtrlCreateInput("", 210, 128, 329, 22)
GUICtrlSetFont(-1, 12, 400, 0, "Arial")
$TTierartIn = GUICtrlCreateInput("", 210, 188, 329, 22)
GUICtrlSetFont(-1, 12, 400, 0, "Arial")
$TRasseIn = GUICtrlCreateInput("", 210, 248, 329, 22)
GUICtrlSetFont(-1, 12, 400, 0, "Arial")
$TGbIn = GUICtrlCreateInput("", 210, 308, 329, 22)
GUICtrlSetFont(-1, 12, 400, 0, "Arial")
$TGeschlechtIn = GUICtrlCreateInput("", 210, 368, 329, 22)
GUICtrlSetFont(-1, 12, 400, 0, "Arial")
$TKennzeichenIn = GUICtrlCreateInput("", 210, 428, 329, 22)
GUICtrlSetFont(-1, 12, 400, 0, "Arial")
$TTranspondernummerIn = GUICtrlCreateInput("", 210, 488, 329, 22)
GUICtrlSetFont(-1, 12, 400, 0, "Arial")
$TabSheet3 = GUICtrlCreateTabItem("Behandlung ") ;Behandlung
$hAdd = GUICtrlCreateButton("Hinzufügen", 430, 16, 75, 25)
GUICtrlCreateTabItem("")
$hTabSheet3 = GUICreate("HilfsTab 3", 1270, 820, 55, 130, BitOR($WS_POPUP, $WS_VSCROLL, $WS_CLIPSIBLINGS), $WS_EX_MDICHILD, $Kundenkartei)
GUICtrlSetBkColor($hTabSheet3,0xFFFFFF)
GUISetState(@SW_SHOW, $Kundenkartei)
Scrollbar_Create($hTabSheet3, $SB_VERT, 10 + ($iEdits-5)*80)
Scrollbar_Step(20, $hTabSheet3, $SB_VERT)
GUISetState(@SW_HIDE, $hTabSheet3)
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $hAdd
ReDim $hEdit[UBound($hEdit) + 1][6] ;<=============== warscheins noch von mir
_newEdit($iEdits)
$iEdits += 1
_GUIScrollBars_SetScrollRange($hTabSheet3, $SB_VERT, 0, 5 + 10+($iEdits-5)*80)
Case $PageControl1
If _GUICtrlTab_GetCurSel($PageControl1) = 2 Then
GUISetState(@SW_SHOW, $hTabSheet3)
Else
GUISetState(@SW_HIDE, $hTabSheet3)
EndIf
Case $Save
$hSave = InputBox("Save", "Unter welchem Titel soll die Kundenkartei gespeichert werden?")
IniWrite("TEMP" ,"temp","temp", $hSave )
IniWrite($hSave, "Edits", "Count", $iEdits)
for $i = 0 to $iEdits -1 ;<=======================
_SaveEdit($i)
Next
IniDelete( "TEMP" , "temp" )
Case $Load
$hload = InputBox("Load", "Welche Kundenkartei soll geladen werden?")
IniWrite( "TEMP" , "temp" , "temp" , $hload )
Global $iEdits = IniRead($hload, "Edits", "Count", 1)
Global $hEdit[$iEdits][6], $iTop = 5
ConsoleWrite($iEdits & @CRLF)
For $i = 0 To $iEdits - 1
_newEdit($i)
Next
for $i = 0 to $iEdits -1 ;<=======================
_loadEdit($i)
Next
IniDelete( "TEMP" , "temp" )
Case $New
_New()
EndSwitch
WEnd
Func _newEdit($iEditNr)
GUISwitch($hTabSheet3)
ConsoleWrite($iEditNr & @CRLF)
$hEdit[$iEditNr][0] = GUICtrlCreateEdit("", 56, $iTop, 180, 70, BitOR($WS_VSCROLL, $ES_WANTRETURN))
$hEdit[$iEditNr][1] = GUICtrlCreateEdit("", 236, $iTop, 180, 70, BitOR($WS_VSCROLL, $ES_WANTRETURN))
$hEdit[$iEditNr][2] = GUICtrlCreateEdit("", 416, $iTop, 180, 70, BitOR($WS_VSCROLL, $ES_WANTRETURN))
$hEdit[$iEditNr][3] = GUICtrlCreateEdit("", 596, $iTop, 180, 70, BitOR($WS_VSCROLL, $ES_WANTRETURN))
$hEdit[$iEditNr][4] = GUICtrlCreateEdit("", 776, $iTop, 180, 70, BitOR($WS_VSCROLL, $ES_WANTRETURN))
$hEdit[$iEditNr][5] = GUICtrlCreateEdit("", 956, $iTop, 180, 70, BitOR($WS_VSCROLL, $ES_WANTRETURN))
$iTop += 80
GUISwitch($Kundenkartei)
EndFunc ;==>_newEdit
Func _loadEdit($iEditNr)
$iload = IniRead( "TEMP" , "temp" , "temp" , "" )
GUICtrlSetData($hEdit[$iEditNr][0],IniRead($iload,"Edit" & $iEditNr & "0" ,"Edit", ""))
GUICtrlSetData($hEdit[$iEditNr][1],IniRead($iload,"Edit" & $iEditNr & "1" ,"Edit", ""))
GUICtrlSetData($hEdit[$iEditNr][2],IniRead($iload,"Edit" & $iEditNr & "2" ,"Edit", ""))
GUICtrlSetData($hEdit[$iEditNr][3],IniRead($iload,"Edit" & $iEditNr & "3" ,"Edit", ""))
GUICtrlSetData($hEdit[$iEditNr][4],IniRead($iload,"Edit" & $iEditNr & "4" ,"Edit", ""))
GUICtrlSetData($hEdit[$iEditNr][5],IniRead($iload,"Edit" & $iEditNr & "5" ,"Edit", ""))
EndFunc
Func _SaveEdit($iEditNr)
ConsoleWrite("Zeilen: " & UBound($hEdit) & "Spalten: " & UBound($hEdit,2) & "Dim: " & UBound($hEdit,0) & @CRLF)
$iSave = IniRead( "TEMP" , "temp" , "temp" , "" )
Local $hFile = IniWrite($iSave,"Edit" & $iEditNr & "0" ,"Edit", GUICtrlRead($hEdit[$iEditNr][0]))
Local $hFile = IniWrite($iSave,"Edit" & $iEditNr & "1" ,"Edit", GUICtrlRead($hEdit[$iEditNr][1]))
Local $hFile = IniWrite($iSave,"Edit" & $iEditNr & "2" ,"Edit", GUICtrlRead($hEdit[$iEditNr][2]))
Local $hFile = IniWrite($iSave,"Edit" & $iEditNr & "3" ,"Edit", GUICtrlRead($hEdit[$iEditNr][3]))
Local $hFile = IniWrite($iSave,"Edit" & $iEditNr & "4" ,"Edit", GUICtrlRead($hEdit[$iEditNr][4]))
Local $hFile = IniWrite($iSave,"Edit" & $iEditNr & "5" ,"Edit", GUICtrlRead($hEdit[$iEditNr][5]))
EndFunc
Func _New()
IniWrite( "TEMP" , "temp" , "temp" , "" )
for $i = 0 to $iEdits -1 ;<=======================
_loadEdit($i)
Next
IniDelete( "TEMP" , "temp" )
EndFunc