Combobox auslesen / senden

01/05/2012 22:17 Project_X#1
Schönen Guten abend com ;)

Ich melde mich doch noch mal mit einer frage :(

Ich wollte halt ne Combobox auslesen lassen & den ausgelesenen wert senden :)


PHP Code:
$TabSheet1 GUICtrlCreateTabItem("Werte")
GUICtrlSetState(-1,$GUI_SHOW)
GUICtrlCreateCombo(""124565325)
$Wert1 GUICtrlSetData(-1"a|b ")
$Checkbox1 GUICtrlCreateCheckbox("1.Wert"16568125
Ich wollte halt mit dem lernen nochmal neu anfangen von AutoIt,
hab mir Tutorials durchgelesen & angeschaut & bin Somit auf die Comboboxen gestoßen & finde es eigentlich ziemlich interessant.

Ich möchte aber den wert nicht in MsgBoxen oder ini.dateien wiedergeben

sondern halt einfach 'Send' oder 'ControlSend' :)

Würde mich auch drüber freuen, wenn jmd mir anhaltspunkte gibt, wie ihr angefangen habt & was ihr zuerst programmiert habt
(Nachdem Taschenrechner)

Mfg :)
01/05/2012 22:26 lolkop#2
GuiCtrlRead($handle)

zur beschaffung sämtlicher infos aus controls in einem gui
01/05/2012 22:34 Project_X#3
Quote:
Originally Posted by lolkop View Post
GuiCtrlRead($handle)

zur beschaffung sämtlicher infos aus controls in einem gui
Habe ich auch schon :(
Nur wenn ich jetzt z.b schreibe

PHP Code:
Send ($Wert1
Funktioniert da ja nicht. Also halt den ausgelesenen wert senden
01/05/2012 22:44 lolkop#4
Code:
$hwnd = GuiCtrlCreate<control>
sämtliche befehle zur erstellung von controls im gui, geben die handles der controls zurück.

würde ich jetzt $hwnd abfragen, so würde ich das handle des controls zurück bekommen. will ich beispielsweise den text eines inputs, bzw wie in deinem beispiel einer combo-box auslesen, kann ich das über GuiCtrlRead(...) oder ControlGetText(...) machen.

Code:
$hwnd = GuiCtrlCreate<control>
$inhalt = GuiCtrlRead($hwnd)

; $hwnd <- Handle des controls
; $inhalt <- rückgabewert von guictrlread (meist text des controls)
01/05/2012 22:46 xShizoidx#5
Dann machst du etwas falsch.
So wird z.B. der Wert von der Checkbox mit GUICtrlRead ausgelesen :
Code:
$Wert = GUICtrlRead ($Checkbox1)
				MsgBox(64,"Wert","Der Wert des Controls ist : " & $Wert)
01/05/2012 23:02 Project_X#6
Quote:
Originally Posted by lolkop View Post
Code:
$hwnd = GuiCtrlCreate<control>
sämtliche befehle zur erstellung von controls im gui, geben die handles der controls zurück.

würde ich jetzt $hwnd abfragen, so würde ich das handle des controls zurück bekommen. will ich beispielsweise den text eines inputs, bzw wie in deinem beispiel einer combo-box auslesen, kann ich das über GuiCtrlRead(...) oder ControlGetText(...) machen.

Code:
$hwnd = GuiCtrlCreate<control>
$inhalt = GuiCtrlRead($hwnd)

; $hwnd <- Handle des controls
; $inhalt <- rückgabewert von guictrlread (meist text des controls)

Hab ebend nochmal ein neuen Script geöffnet:

PHP Code:
#include <GUIConstants.au3>

#Region ### START Koda GUI section ### Form=
$Form1 GUICreate("Form1"270154193125)
$Combo1 GUICtrlCreateCombo("Combo1"144329725)
GUICtrlSetData(-1"a|b")
$Checkbox1 GUICtrlCreateCheckbox("Checkbox1"48329717)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###

While 1
    $nMsg 
GUIGetMsg()
    Switch 
$nMsg
        
Case $GUI_EVENT_CLOSE
            
Exit
            
$hwnd GUICtrlCreateCombo 
            $Inhalt 
GUICtrlRead ($hwnd)
            
Send ($Inhalt)

    EndSwitch
WEnd 
Habe ich das jetzt richtig verstanden, oder stell ich mich unwissend doof an :(?

Edit: *neuen Script
01/05/2012 23:12 xShizoidx#7
Ahh ich glaube ich habe nun verstanden, was du möchtest.
Du möchtest , dass dies wiedergegeben wird, welches du bei der Combobox ausgewählt hast?

Dann schau dir dies hier mal an ( So einfach wie möglich geschrieben ) :

Code:
#include <ButtonConstants.au3>
#include <ComboConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
$Form1 = GUICreate("Form1", 158, 74, 192, 124)
$Combo1 = GUICtrlCreateCombo("Nahrung auswählen", 8, 8, 137, 25, BitOR($CBS_DROPDOWN,$CBS_AUTOHSCROLL))
GUICtrlSetData(-1, "Apfel|Banane|Birne")
$Auslesen = GUICtrlCreateButton("Auslesen", 32, 40, 75, 25)
GUISetState(@SW_SHOW)

While 1
	$nMsg = GUIGetMsg()
	Switch $nMsg
		Case $GUI_EVENT_CLOSE
			Exit
		Case $Auslesen
			$Wert = GUICtrlRead($Combo1) ; Ausgewählte Wort wird ausgelesen und in einer Variable gespeichert
			Send($Wert) ; Variable wird aufgerufen wiedergegeben
	EndSwitch
WEnd
01/05/2012 23:14 lolkop#8
1. es ist DAS script, nicht DER script :P

zu deinem problem:
du hast doch das combo control bereits erstellt. beim erstellen
Code:
$Combo1 = GUICtrlCreateCombo("Combo1", 144, 32, 97, 25)
wird das handle des controls in $Combo1 gespeichert.
01/05/2012 23:24 Project_X#9
Quote:
Originally Posted by netterwurm8 View Post
Ahh ich glaube ich habe nun verstanden, was du möchtest.
Du möchtest , dass dies wiedergegeben wird, welches du bei der Combobox ausgewählt hast?

Dann schau dir dies hier mal an ( So einfach wie möglich geschrieben ) :

Code:
#include <ButtonConstants.au3>
#include <ComboConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
$Form1 = GUICreate("Form1", 158, 74, 192, 124)
$Combo1 = GUICtrlCreateCombo("Nahrung auswählen", 8, 8, 137, 25, BitOR($CBS_DROPDOWN,$CBS_AUTOHSCROLL))
GUICtrlSetData(-1, "Apfel|Banane|Birne")
$Auslesen = GUICtrlCreateButton("Auslesen", 32, 40, 75, 25)
GUISetState(@SW_SHOW)

While 1
	$nMsg = GUIGetMsg()
	Switch $nMsg
		Case $GUI_EVENT_CLOSE
			Exit
		Case $Auslesen
			$Wert = GUICtrlRead($Combo1) ; Ausgewählte Wort wird ausgelesen und in einer Variable gespeichert
			Send($Wert) ; Variable wird aufgerufen wiedergegeben
	EndSwitch
WEnd
Ah Vielen dank :)

Habe das falsche auslesen lasse also Ich habe eine variable vor:
'GuiCtrlSetData' gemacht :(

Ich dachte mir, weil dort die werte sind, & ich die auslesen möchte, muss ich die abfragen :)

Vielen dank :)

@ lolkop ouh, :D, doch noch'n fehler ;)

& ja stimmt logisch, schuldige für diese fehler xd