Hallo zusammen,
ich komm einfach nicht auf die Lösung....
ich habe eine GUI und möchte beim klicken eines Button Suche mit WinGetState abfragen, welches der Fenster als letztes selektiert war, damit die dementsprechende Query ausgegeben wird....
Ist das so überhaupt möglich?
Spoiler anzeigen
AutoIt
#include <array.au3>
#include <Firebird_ADODB.au3>
#include <String.au3>
#include <MsgBoxConstants.au3>
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#include <File.au3>
#include <GuiListView.au3>
#include <FireBird.au3>
#include <ImageSearch.au3>
#include <DesktopWidth.au3>
#include <DotNetIdentification.au3>
#include <ComboConstants.au3>
#include <GUIListBox.au3>
#include <StringConstants.au3>
#include <AutoItConstants.au3>
#include <ListViewConstants.au3>
#region ### START Koda GUI section ### Form=
$Form1_1_1 = GUICreate("Form1", 627, 444, 192, 124)
$EAN = GUICtrlCreateInput("4250740300182", 32, 32, 233, 21)
$NAME = GUICtrlCreateInput("Name", 32, 80, 233, 21)
$Amount = GUICtrlCreateInput("Amount", 32, 128, 233, 21)
$Search = GUICtrlCreateButton("Search", 288, 32, 193, 49, $WS_GROUP)
GUICtrlSetFont(-1, 15, 400, 0, "MS Sans Serif")
$Save = GUICtrlCreateButton("Save", 288, 96, 193, 57, $WS_GROUP)
GUICtrlSetFont(-1, 15, 400, 0, "MS Sans Serif")
$g_hListView = _GUICtrlListView_Create($Form1_1_1, "Name|Titel|Anzahl|Lagerfach|Preis|EAN", 32, 168, 442, 118)
_GUICtrlListView_SetExtendedListViewStyle($g_hListView, BitOR($LVS_EX_GRIDLINES, $LVS_EX_FULLROWSELECT, $LVS_EX_SUBITEMIMAGES))
GUICtrlSendMsg(-1, $LVM_SETCOLUMNWIDTH, 0, 110)
GUICtrlSendMsg(-1, $LVM_SETCOLUMNWIDTH, 1, 50)
GUICtrlSendMsg(-1, $LVM_SETCOLUMNWIDTH, 2, 50)
GUICtrlSetResizing(-1, $GUI_DOCKRIGHT)
$Lagerfach = GUICtrlCreateInput("Lagerfach", 32, 304, 233, 21)
Local $accels[1][2] = [["{Enter}", $EAN]]
GUISetAccelerators($accels)
GUISetState(@SW_SHOW)
#endregion ### END Koda GUI section ###
Global $iCGetFoc = BitAND(WinGetState ("",$EAN),4)
Global $iCGetFoc2 = BitAND(WinGetState ("",$NAME),4)
Global $iCGetFoc3 = BitAND(WinGetState ("",$Amount),4)
Global $iCGetFoc4 = BitAND(WinGetState ("",$Lagerfach),4)
While True
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $Search
Search()
EndSwitch
WEnd
Func Search()
#region - Database Deklaration
; Datenbank:
Global $data_source = "E:\AUTOIT\Scripts\test.fdb"
; Verbindungsstring:
Global $strConnection = "DRIVER=Firebird/InterBase(r) driver; UID=SYSDBA; PWD=masterkey; DBNAME=" & $data_source & ";"
Global $isEAN = GUICtrlRead($EAN)
Global $isName = GUICtrlRead($NAME)
Global $isAmount = GUICtrlRead($Amount)
Global $isLagerfach = GUICtrlRead($Lagerfach)
Select
Case $iCGetFoc = 4
MsgBox(0,'','EAN')
;~ Global $sql_str = "SELECT Distinct ""RefCode"", ""Title"" , ""Stock"" , ""MatchCode"", ""SalesPrice"" , ""EAN""FROM ""StockItem"" Where ""EAN"" like '%" & $isEAN & "%';"
Case $iCGetFoc2 = 4
MsgBox(0,'','Name')
;~ Global $sql_str = "SELECT Distinct ""RefCode"", ""Title"" , ""Stock"" , ""MatchCode"", ""SalesPrice"" , ""EAN""FROM ""StockItem"" Where ""EAN"" like '%" & $isEAN & "%';"
Case $iCGetFoc3 = 4
MsgBox(0,'','Amount')
;~ Global $sql_str = "SELECT Distinct ""RefCode"", ""Title"" , ""Stock"" , ""MatchCode"", ""SalesPrice"" , ""EAN""FROM ""StockItem"" Where ""EAN"" like '%" & $isEAN & "%';"
Case $iCGetFoc4 = 4
MsgBox(0,'','Lagerfach')
;~ Global $sql_str = "SELECT Distinct ""RefCode"", ""Title"" , ""Stock"" , ""MatchCode"", ""SalesPrice"" , ""EAN""FROM ""StockItem"" Where ""EAN"" like '%" & $isEAN & "%';"
EndSelect
EndFunc
Alles anzeigen
Danke und Gruß,
horphi