Hallo,
in meinem Programmbeispiel funktioniert die Standart-Steuerung der GUI API, allerdings die Keys, die ich über "GUISetAccelerators" definiert habe, bleiben leider ohne Wirkung.
Hier mal mein Beispiel:
AutoIt
#include <WindowsConstants.au3>
#include <GUIConstantsEx.au3>
#include <GuiRichEdit.au3>
; Programmfenster erstellen
; FrameGUI mit Menüzeile:
Const $hGUI = GUICreate( "Beispiel", 600, 417, Default, Default, Default, BitOR($WS_EX_COMPOSITED,$GUI_WS_EX_PARENTDRAG) )
Const $FileMenu = GUICtrlCreateMenu( "File" )
Const $FileExit = GUICtrlCreateMenuItem( "Exit"&@TAB&"Ctrl+X", $FileMenu )
Const $ExportMenu = GUICtrlCreateMenu( "Export" )
Const $ExportRawExport = GUICtrlCreateMenuItem( "Raw Export"&@TAB&"Ctrl+R", $ExportMenu )
Const $ExportXMLExport = GUICtrlCreateMenuItem( "XML Export"&@TAB&"Ctrl+M", $ExportMenu )
Const $HelpMenu = GUICtrlCreateMenu( "Help" )
Const $Help = GUICtrlCreateMenuItem( "Help", $HelpMenu )
Const $About = GUICtrlCreateMenuItem( "About", $HelpMenu )
Local $aAccelTable[6][2] = [["{F1}", $Help],["!x", $FileExit],["^r", $ExportRawExport],["^m", $ExportXMLExport],["^a", $About],["^h", $HelpMenu]]
GUISetAccelerators($aAccelTable, $hGUI)
GUISetState( @SW_SHOW )
; Hauptfenster
Const $hMainGUI = GUICreate( "", 600, 400, 0, 0, BitOR($WS_CHILD, $WS_VISIBLE), Default, $hGUI)
Local $Label = GUICtrlCreateLabel( "Hier könnte Ihre Werbung stehen!", 10, 10, 250, 23 )
GUICtrlSetFont( -1, 12, 400, 0, "Calibri" )
Const $idExitBtn = GUICtrlCreateButton( "Exit", 270, 365, 75, 25 )
Local $idMsgBox = _GUICtrlRichEdit_Create( $hMainGUI, "Messages and Errors", 355, 30, 235, 360, BitOR( $ES_READONLY, $ES_MULTILINE ) )
GUISetState( @SW_SHOW )
while 1
$iMsg = GUIGetMsg()
Switch $iMsg
Case $GUI_EVENT_CLOSE, $idExitBtn, $FileExit
ExitLoop
EndSwitch
WEnd
GUIDelete($hMainGUI)
Alles anzeigen
In meinem Hauptscript funktioniert nicht mal mehr die Standart-Steuerung der GUI, aber das könnte daran liegen, dass ich zwei Menüpunkte mit E am Anfang habe!?
Falls jemand weiß, woran das liegen könnte, wäre ich sehr dankbar über einen Hinweis.
VG