Hallo,
bei meinem programm funktioniert alles einwandfrei...bisauf eins...
Aber mal von vorne, wo mein Problem liegt. Und zwar soll wenn ich unter "ausgabe" bei combobox personalnummer (ja egal auch wenns noch ein name ist xD) ein item auswähle, er das entgegensetze bei combobox name einfügen...beide beziehen ihre daten aus einer ini, welche im format: Name#personalnummer ist...
das funktioniert auch soweit, aber leider nicht anders herum...wenn ich bei combobxo namen ein item wähle, ändert er die erstens nicht zu dem gewählen und ändert zudem auch nicht das in der combobox von personalnummer...
hier das script wo dies passiert:
[autoit]
if _ispressed(01) or _ispressed(09) or _ispressed("0D") Then
If ControlFocus("", "", $combo_give_personalnummer) then
for $i = 1 to 10
$name = StringSplit(iniread(@scriptdir & "\person.ini", "person", $i, ""), "#")
if GUICtrlRead($combo_give_personalnummer) = $name[1] Then
;ControlFocus("", "", $combo_give_name)
;controlsend("", "", $combo_give_name, $personalnummer[2])
_GUICtrlComboBox_SetCurSel($combo_give_name, $i - 1)
_GUICtrlComboBox_SetCurSel($combo_give_personalnummer, $i - 1)
EndIf
next
endif
If ControlFocus("", "", $combo_give_name) then
for $i = 1 to 10
$name = StringSplit(iniread(@scriptdir & "\person.ini", "person", $i, ""), "#")
if GUICtrlRead($combo_give_name) = $name[2] Then
;ControlFocus("", "", $combo_give_name)
;controlsend("", "", $combo_give_name, $personalnummer[2])
_GUICtrlComboBox_SetCurSel($combo_give_personalnummer, $i - 1)
_GUICtrlComboBox_SetCurSel($combo_give_name, $i - 1)
EndIf
next
endif
endif
falls das nicht reicht, hier das ganze scirpt:
Spoiler anzeigen
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <ListViewConstants.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#include <GuiListView.au3>
#include <File.au3>
#Include <Misc.au3>
#include <Sound.au3>
#include <Excel.au3>
#include <WinAPI.au3>
#include <Word.au3>
#Include <GuiComboBox.au3>
$font = "Arial"
$datum_ausgeliehen = "21.12.2012"
$datum_pruefung = "21.12.2012"
$datum_reparatur = "21.12.2012"
$focus_combo_give_name = ""
$focus_combo_give_personalnummer = ""
$focus_combo_give_hobbywerkzeug = ""
$focus_combo_get_name = ""
$focus_combo_get_personalnummer = ""
$focus_combo_get_hobbywerkzeug = ""
;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::Hauptfenster:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
$gui_main = GUICreate("Hobbyausgabe", 800, 600, (@DesktopWidth - 800) / 2, (@DesktopHeight - 600) / 2)
GUISetBkColor(0xF5F5DC)
$button_ausgabe = GUICtrlCreateButton("Ausgabe", 50, 300, 300, 100)
$button_rueckgabe = GUICtrlCreateButton("Rückgabe", 450, 300, 300, 100)
GUISetState()
;::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::Ausgabe:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
$gui_give = GUICreate("", 800, 600, "", "", $WS_POPUPWINDOW, $WS_EX_MDICHILD , $gui_main) ;Ausgabe Gui--------------------;
GUISetBkColor(0xEEE8AA) ;Hintergrundfarbe---------------;
$label_give_personalnummer = GUICtrlCreateLabel("Personalnummer:", 40, 30, 120, 20) ;Label Personalnummer-----------;
GUICtrlSetFont(-1, 10, 600, "", $font) ;Schriftgröße und Art-----------;
$combo_give_personalnummer = GUICtrlCreateCombo("", 175, 30, 400, 20) ;Combobox Personalnummer--------;
for $i = 1 to 10
$personalnummer = StringSplit(iniread(@scriptdir & "\person.ini", "person", $i, ""), "#")
GUICtrlSetData(-1, $personalnummer[1])
Next
$label_give_name = GUICtrlCreateLabel("Name:", 40, 70, 100, 20)
GUICtrlSetFont(-1, 10, 600, "", $font)
$combo_give_name = GUICtrlCreateCombo("", 175, 70, 400, 20)
for $i = 1 to 10
$personalnummer = StringSplit(iniread(@scriptdir & "\person.ini", "person", $i, ""), "#")
GUICtrlSetData(-1, $personalnummer[2])
Next
GUICtrlCreateGraphic(25,114, 750, 3, $SS_GRAYframe) ;Trennlinie---------------------;
$label_give_datum = GUICtrlCreateLabel("Ausgabedatum:", 40, 130, 120, 20) ;Label Datum--------------------;
GUICtrlSetFont(-1, 10, 600, "", $font) ;Schriftgröße und Art-----------;
$input_give_datum = GUICtrlCreateInput("", 175, 130, 100, 20) ;Input Datum--------------------;
GUICtrlCreateGraphic(25, 164, 750, 3, $SS_GRAYframe) ;Trennlinie---------------------;
$label_give_herausgeber = GUICtrlCreateLabel("Herausgeber:", 40, 180, 120, 20) ;Label Herausgeber--------------;
GUICtrlSetFont(-1, 10, 600, "", $font) ;Schriftgröße und Art-----------;
$radio_give_herausgeber_kal = GUICtrlCreateRadio(" Kalitzki", 175, 180, 120, 20) ;Radio Herausgeber Kalitzki-----;
GUICtrlSetFont(-1, 10, 600, "", $font) ;Schriftgröße und Art-----------;
$radio_give_herausgeber_buch = GUICtrlCreateRadio(" Buchkremer", 175, 205, 120, 20) ;Radio Herausgeber Buchkremer---;
GUICtrlSetFont(-1, 10, 600, "", $font) ;Schriftgröße und Art-----------;
GUICtrlCreateGraphic(25, 239, 750, 3, $SS_GRAYframe) ;Trennlinie---------------------;
$label_give_hobbywerkzeug = GUICtrlCreateLabel("Hobbywerkzeug:", 40, 255, 120, 20) ;Label Gegenstand---------------;
GUICtrlSetFont(-1, 10, 600, "", $font) ;Schriftgröße und Art-----------;
$combo_give_hobbywerkzeug = GUICtrlCreateCombo("", 175, 255, 400, 20) ;Combobox Gegenstand------------;
GUICtrlSetData(-1, "andreas|alexander|atze")
;GUICtrlCreateGraphic(25, 239, 750, 3, $SS_GRAYframe) ;Trennlinie---------------------;
$button_verfuegbarkeit_check = GUICtrlCreateButton("Verfügbarkeit prüfen", 600, 252, 150, 26)
$label_verfuegbarkeit = GUICtrlCreateLabel("Verfügbarkeit:", 40, 295, 120, 20)
;$label_verfuegbar = GUICtrlCreateLabel("Verfügbar", 175, 295, 50, 20)
$pic_yes = GUICtrlCreatePic(@scriptdir & "\yes.jpg", 175, 285, 30, 30)
;$pic_no = GUICtrlCreatePic(@scriptdir & "\no.jpg", 253, 288, 27, 27)
;GUICtrlSetState(-1, $gui_disable)
$label_ort = GUICtrlCreateLabel("Ort:", 40, 325, 100, 20)
$label_Hobbyausgabe = GUICtrlCreateLabel("Hobbyausgabe", 175, 325, 120, 20)
$label_Ausgeliehen = GUICtrlCreateLabel("Ausgeliehen seit " & $datum_ausgeliehen, 175, 345, 250, 20)
GUICtrlSetState(-1, $gui_disable)
$label_pruefung = GUICtrlCreateLabel("Prüfung seit " & $datum_pruefung, 175, 365, 250, 20)
GUICtrlSetState(-1, $gui_disable)
$label_reparatur = GUICtrlCreateLabel("In Reparatur seit " & $datum_reparatur, 175, 385, 250, 20)
GUICtrlSetState(-1, $gui_disable)
$button_give_uebernehmen = GUICtrlCreateButton("Übernehmen", 100, 520, 150, 40) ;Button Übernehmen--------------;
$button_give_zurueck = GUICtrlCreateButton("Zurück", 550, 520, 150, 40) ;Button Zurück------------------;
GUISetState(@sw_hide)
GUIRegisterMsg($WM_COMMAND, "WM_COMMAND")
;::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::Rückgabe:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
$gui_get = GUICreate("", 800, 600, "", "", $WS_POPUPWINDOW, $WS_EX_MDICHILD , $gui_main)
GUISetBkColor(0xFFDEAD)
$label_get_personalnummer = GUICtrlCreateLabel("Personalnummer:", 40, 30, 120, 20) ;Label Personalnummer-----------;
GUICtrlSetFont(-1, 10, 600, "", $font) ;Schriftgröße und Art-----------;
$combo_get_personalnummer = GUICtrlCreateCombo("", 175, 30, 400, 20) ;Combobox Personalnummer--------;
GUICtrlSetData(-1, "andreas|alexander|atze") ;Daten Personalnummer-----------;
$label_get_name = GUICtrlCreateLabel("Name:", 40, 70, 100, 20)
GUICtrlSetFont(-1, 10, 600, "", $font)
$combo_get_name = GUICtrlCreateCombo("", 175, 70, 400, 20)
GUICtrlSetData(-1, "andreas|alexander|atze")
GUICtrlCreateGraphic(25,114, 750, 3, $SS_GRAYframe) ;Trennlinie---------------------;
$label_get_datum = GUICtrlCreateLabel("Rückgabedatum:", 40, 130, 120, 20) ;Label Datum--------------------;
GUICtrlSetFont(-1, 10, 600, "", $font) ;Schriftgröße und Art-----------;
$input_get_datum = GUICtrlCreateInput("", 175, 130, 100, 20) ;Input Datum--------------------;
GUICtrlCreateGraphic(25, 164, 750, 3, $SS_GRAYframe) ;Trennlinie---------------------;
GUICtrlCreateGraphic(25, 239, 750, 3, $SS_GRAYframe) ;Trennlinie---------------------;
$label_get_hobbywerkzeug = GUICtrlCreateLabel("Hobbywerkzeug:", 40, 255, 120, 20) ;Label Gegenstand---------------;
GUICtrlSetFont(-1, 10, 600, "", $font) ;Schriftgröße und Art-----------;
$combo_get_hobbywerkzeug = GUICtrlCreateCombo("", 175, 255, 400, 20) ;Combobox Gegenstand------------;
GUICtrlSetData(-1, "andreas|alexander|atze")
$button_get_uebernehmen = GUICtrlCreateButton("Übernehmen", 100, 520, 150, 40)
$button_get_zurueck = GUICtrlCreateButton("Zurück", 550, 520, 150, 40)
GUISetState(@sw_hide)
GUIRegisterMsg($WM_COMMAND, "WM_COMMAND")
;::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
while 1
$msg = GUIGetMsg()
if $msg = - 3 then Exit
if $msg = $button_ausgabe then GUISetState(@sw_show, $gui_give)
if $msg = $button_rueckgabe then GUISetState(@sw_show, $gui_get)
if $msg = $button_give_zurueck then GUISetState(@sw_hide, $gui_give)
if $msg = $button_get_zurueck then GUISetState(@sw_hide, $gui_get)
sleep(20)
if _ispressed(01) or _ispressed(09) or _ispressed("0D") Then
If ControlFocus("", "", $combo_give_personalnummer) then
for $i = 1 to 10
$name = StringSplit(iniread(@scriptdir & "\person.ini", "person", $i, ""), "#")
if GUICtrlRead($combo_give_personalnummer) = $name[1] Then
;ControlFocus("", "", $combo_give_name)
;controlsend("", "", $combo_give_name, $personalnummer[2])
_GUICtrlComboBox_SetCurSel($combo_give_name, $i - 1)
_GUICtrlComboBox_SetCurSel($combo_give_personalnummer, $i - 1)
EndIf
next
endif
If ControlFocus("", "", $combo_give_name) then
for $i = 1 to 10
$name = StringSplit(iniread(@scriptdir & "\person.ini", "person", $i, ""), "#")
if GUICtrlRead($combo_give_name) = $name[2] Then
;ControlFocus("", "", $combo_give_name)
;controlsend("", "", $combo_give_name, $personalnummer[2])
_GUICtrlComboBox_SetCurSel($combo_give_personalnummer, $i - 1)
_GUICtrlComboBox_SetCurSel($combo_give_name, $i - 1)
EndIf
next
endif
endif
WEnd
Func _Edit_Change_give_name()
_GUICtrlComboBox_AutoComplete($combo_give_name)
EndFunc
Func _Edit_Change_give_personalnummer()
_GUICtrlComboBox_AutoComplete($combo_give_personalnummer)
EndFunc
Func _Edit_Change_give_hobbywerkzeug()
_GUICtrlComboBox_AutoComplete($combo_give_hobbywerkzeug)
EndFunc
Func _Edit_Change_get_name()
_GUICtrlComboBox_AutoComplete($combo_get_name)
EndFunc
Func _Edit_Change_get_personalnummer()
_GUICtrlComboBox_AutoComplete($combo_get_personalnummer)
EndFunc
Func _Edit_Change_get_hobbywerkzeug()
_GUICtrlComboBox_AutoComplete($combo_get_hobbywerkzeug)
EndFunc
Func WM_COMMAND($winhandle, $win_msgID, $iwParam, $ilParam)
$focus_combo_give_name = GUICtrlGetHandle($combo_give_name)
$focus_combo_give_personalnummer = GUICtrlGetHandle($combo_give_personalnummer)
$focus_combo_give_hobbywerkzeug = GUICtrlGetHandle($combo_give_hobbywerkzeug)
$focus_combo_get_name = GUICtrlGetHandle($combo_get_name)
$focus_combo_get_personalnummer = GUICtrlGetHandle($combo_get_personalnummer)
$focus_combo_get_hobbywerkzeug = GUICtrlGetHandle($combo_get_hobbywerkzeug)
$iCode = BitShift($iwParam, 16) ; Hi Word
Switch $ilParam
Case $combo_give_name, $focus_combo_give_name
Switch $iCode
Case $CBN_EDITCHANGE ; Sent after the user has taken an action that may have altered the text in the edit control portion of a combo box
_Edit_Change_give_name()
EndSwitch
Case $combo_give_personalnummer, $focus_combo_give_personalnummer
Switch $iCode
Case $CBN_EDITCHANGE ; Sent after the user has taken an action that may have altered the text in the edit control portion of a combo box
_Edit_Change_give_personalnummer()
EndSwitch
Case $combo_give_hobbywerkzeug, $focus_combo_give_hobbywerkzeug
Switch $iCode
Case $CBN_EDITCHANGE ; Sent after the user has taken an action that may have altered the text in the edit control portion of a combo box
_Edit_Change_give_hobbywerkzeug()
EndSwitch
Case $combo_get_name, $focus_combo_get_name
Switch $iCode
Case $CBN_EDITCHANGE ; Sent after the user has taken an action that may have altered the text in the edit control portion of a combo box
_Edit_Change_get_name()
EndSwitch
Case $combo_get_personalnummer, $focus_combo_get_personalnummer
Switch $iCode
Case $CBN_EDITCHANGE ; Sent after the user has taken an action that may have altered the text in the edit control portion of a combo box
_Edit_Change_get_personalnummer()
EndSwitch
Case $combo_get_hobbywerkzeug, $focus_combo_get_hobbywerkzeug
Switch $iCode
Case $CBN_EDITCHANGE ; Sent after the user has taken an action that may have altered the text in the edit control portion of a combo box
_Edit_Change_get_hobbywerkzeug()
EndSwitch
EndSwitch
Return $GUI_RUNDEFMSG
EndFunc
ich hoffe man kann mir helfen...mfg und danke im voraus