Jump to content

Recommended Posts

Posted

Hello there,

I am trying to define GUISetAccelerators on the child window but i think there is something which i can't understand to solve the issue,

here is a sample code

#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
Opt("GUIOnEventMode",1)
Global $main,$child

$main = GUICreate("Form1", 633, 447, 192, 200)
GUISetState()

$child = GUICreate("Form1", 200, 200, 0, 0,$WS_CHILD,-1,$main)
$b = GUICtrlCreateButton("test button",0,0)
GUICtrlSetOnEvent($b,"ENTER")
Dim $k[1][2] = [ ["{ENTER}",$b] ]
GUISetAccelerators($k,$child)
GUISetState()


While 1
    Sleep(100)
WEnd

Func ENTER()
    ConsoleWrite("> Working at "&@GUI_WinHandle & $child)
EndFunc

73 108 111 118 101 65 117 116 111 105 116

Posted

The child window does not have focus when you start the script so pressing enter does nothing , if you click on the button the child gui gains focus and it works, if you set the focus to the button like below it works straight away.

#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
Opt("GUIOnEventMode",1)
Global $main,$child

$main = GUICreate("Form1", 633, 447, 192, 200)
GUISetState()

$child = GUICreate("Form1", 200, 200, 0, 0,$WS_CHILD,-1,$main)
$b = GUICtrlCreateButton("test button",0,0)
GUICtrlSetOnEvent($b,"ENTER")
Dim $k[1][2] = [ ["{ENTER}",$b] ]
GUISetAccelerators($k,$child)
GUISetState()
GUICtrlSetState ($b, $GUI_FOCUS)

While 1
    Sleep(100)
WEnd

Func ENTER()
    ConsoleWrite("> Working at "&@GUI_WinHandle & $child & @CR)
EndFunc
GDIPlusDispose - A modified version of GDIPlus that auto disposes of its own objects before shutdown of the Dll using the same function Syntax as the original.EzMySql UDF - Use MySql Databases with autoit with syntax similar to SQLite UDF.
Posted

The child window does not have focus when you start the script so pressing enter does nothing , if you click on the button the child gui gains focus and it works, if you set the focus to the button like below it works straight away.

#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
Opt("GUIOnEventMode",1)
Global $main,$child

$main = GUICreate("Form1", 633, 447, 192, 200)
GUISetState()

$child = GUICreate("Form1", 200, 200, 0, 0,$WS_CHILD,-1,$main)
$b = GUICtrlCreateButton("test button",0,0)
GUICtrlSetOnEvent($b,"ENTER")
Dim $k[1][2] = [ ["{ENTER}",$b] ]
GUISetAccelerators($k,$child)
GUISetState()
GUICtrlSetState ($b, $GUI_FOCUS)

While 1
    Sleep(100)
WEnd

Func ENTER()
    ConsoleWrite("> Working at "&@GUI_WinHandle & $child & @CR)
EndFunc

Thanks for your reply.

What will you say about this condition ?

#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
Opt("GUIOnEventMode",1)
Global $main,$child

$main = GUICreate("Form1", 633, 447, 192, 200)
GUISetState()

$child = GUICreate("Form1", 200, 200, 0, 0,$WS_CHILD,-1,$main)
$i = GUICtrlCreateInput("Enter is not working ???",0,0)
$b = GUICtrlCreateDummy()
GUICtrlSetOnEvent($b,"ENTER")
Dim $k[1][2] = [ ["{ENTER}",$b] ]
GUISetAccelerators($k,$child)
GUISetState()
GUICtrlSetState ($i, $GUI_FOCUS)

While 1
    Sleep(100)
WEnd

Func ENTER()
    ConsoleWrite("> Working at "&@GUI_WinHandle & $child & @CR)
EndFunc

if you delete the $child gui & set GUISetAccelerators($k,$main) it will work perfect.

What is solution for this type of situations ?

73 108 111 118 101 65 117 116 111 105 116

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...