GUI Speichern....

05/03/2008 20:03 blackWorkx#1
Hi,

ich habe mal ne frage zum thema GUI. Und zwar kann man eine GUI speichern? Also ich meine es so...

Ich habe Input kästchen in meiner gui wo man X/Y koordinaten eintragen kann. Nun möchte ich es aber so machen das wenn der USER seine koordinaten einträgt das er diese dann auch speichern kann ohne diese jedes mal wenn er die GUI startet sie neu eintragen muss.

mfg und danke schonma
05/03/2008 22:11 Term!nX#2
Ich würd das über ne settings.ini machen.
$set = IniRead usw.
GUICtrlSetData($ctrl, $set)
05/03/2008 22:44 blackWorkx#3
Meinst du so oder kann man auch 2 daten aus einer InputBox ziehen? BTW. wenn der das dann in die ini reins chreibt und der user dann die GUI startet dann brauch er nich nochmal seine daten rein geben ja??


func xyhandel()

$xhandel = InputBox("X-Koordinaten", "Hier deine X Koordinaten eintragen")
IniWrite(@ScriptDir & "\user.ini", "X Handel Koordinaten", "X-wert", $xhandel)
$xhandel2 = IniRead(@ScriptDir & "\user.ini", "X Handel Koordinaten", "X-wert", "0")

$yhandel = InputBox("Y-Koordinaten", "Hier deine Y Koordinaten eintragen")
IniWrite(@ScriptDir & "\user.ini", "Y Handel Koordinaten", "Y-wert", $yhandel)
$yhandel2 = IniRead(@ScriptDir & "\user.ini", "Y Handel Koordinaten", "Y-wert", "0")
MsgBox(0, "Deine X Koordinaten", $xhandel2)
MsgBox(0, "Deine Y Koordinaten", $yhandel2)


EndFunc
05/04/2008 03:26 Azunai#4
der sinn dieser funktion entzieht sich meinem geiste 0o
05/04/2008 11:40 blackWorkx#5
Meinst du meiner func oder überhaupt solch eine func? Wenn meine meinst zeig mir ma ne bessere, denn ich lerne noch .

mfg
05/04/2008 12:53 Azunai#6
ich weiß ja nicht was deine da machen soll o0

also wenn du nen gui hast und jemand soll die settings speichern können, dann müsste das in etwa so aussehen:
Code:
#region --- GuiBuilder code Start ---
; Script generated by AutoBuilder 0.6 Prototyp

#include <GuiConstants.au3>


GuiCreate("MyGUI", 178, 316,-1, -1 , BitOR($WS_OVERLAPPEDWINDOW, $WS_CLIPSIBLINGS))

$Input_1 = GuiCtrlCreateInput("Input1", 30, 20, 130, 20)
$Checkbox_1 = GuiCtrlCreateCheckbox("Checkbox1", 40, 70, 90, 30)
$Radio_1 = GuiCtrlCreateRadio("Radio1", 30, 120, 60, 30)
$Input_2 = GuiCtrlCreateInput("Input2", 20, 180, 110, 20)
$Button_5 = GuiCtrlCreateButton("save", 30, 260, 100, 30)
readini()
GuiSetState()
While 1
	$msg = GuiGetMsg()
	Select
	Case $msg = $GUI_EVENT_CLOSE
		ExitLoop
	Case $msg = $Button_5
		writeini()
		;;;
	EndSelect
WEnd
Exit
#endregion --- GuiBuilder generated code End ---


func readini()
	GUICtrlSetData($Input_1,IniRead("gui.dat","input","1",""))
	GUICtrlSetData($Input_2,IniRead("gui.dat","input","2",""))
	GUICtrlSetstate($Radio_1,IniRead("gui.dat","radio","1",$GUI_UNCHECKED))
	GUICtrlSetstate($Checkbox_1,IniRead("gui.dat","checkbox","1",$GUI_UNCHECKED))
EndFunc

func writeini()
	IniWrite("gui.dat","input","1",GUICtrlRead($Input_1))
	IniWrite("gui.dat","input","2",GUICtrlRead($Input_2))
	IniWrite("gui.dat","radio","1",GUICtrlread($Checkbox_1))
	IniWrite("gui.dat","checkbox","1",GUICtrlread($Radio_1))
EndFunc
05/04/2008 16:13 Term!nX#7
ich mach maln bsp-script.

Ist jetzt ganz anders als vorher ausgedacht. Also.. In der Guimsg Schleife ist eine Funktion SetValues, diese liest den aktuellen Wert der Ctrl aus und speichert ihn in der Ini.
Mit der Opt OnExit gings leider nicht, da bevor die Funktion ausgeführt wird, wird die GUI gekillt und der Wert der Inputbox geht ins Datennirvana. Daher fällt GuiCtrlRead immer 0 aus.
05/04/2008 20:10 blackWorkx#8
danke wert mir ma alles durch gucken :)

/edit

Bitchbi danke genau so wie du das gemacht hast wollte ich es haben :)

[Only registered and activated users can see links. Click Here To Register...]

deins is auch ok wert aber das von bitchbi nehmen das is genau so wie ich es vor hatte

aber danke trotzdem an beide