How to make wxFrame/WxDialog without focus?

If you are using the main C++ distribution of wxWidgets, Feel free to ask any question related to wxWidgets development here. This means questions regarding to C++ and wxWidgets, not compile problems.
Post Reply
aro77
In need of some credit
In need of some credit
Posts: 4
Joined: Mon Nov 08, 2004 4:15 pm

How to make wxFrame/WxDialog without focus?

Post by aro77 »

How to make wxFrame/WxDialog widthout focus to use it as a virtual keyboard ? I'm trying difrent flags but without results.

I'm know this is possible.
Please help me.
geon
I live to help wx-kind
I live to help wx-kind
Posts: 189
Joined: Tue Sep 07, 2004 4:10 pm
Location: Sweden, Uppsala

Post by geon »

I would guess that this requires some heavy OS-speciffic hacking.

What do you want to achieve? A clone of the virtual keyoard in windows?
SnakeChomp
Filthy Rich wx Solver
Filthy Rich wx Solver
Posts: 235
Joined: Sun Oct 10, 2004 2:53 am

Post by SnakeChomp »

What you are really trying to do is "hook" (windows terminology) keyboard events so that your application recieves keyboard events even though it is not focused. This would definately be a platform specific area, and is also the area in which key loggers and other bad programs operate, so don't expect to find too much help on "hooking" stuff in any respectable forum.
aro77
In need of some credit
In need of some credit
Posts: 4
Joined: Mon Nov 08, 2004 4:15 pm

Post by aro77 »

Thanks for your replies.

I saw wx app beKey www.be-enabled.de
Its windows only - so you are right.

>This would definately be a platform specific area

Thanks.
aro77
In need of some credit
In need of some credit
Posts: 4
Joined: Mon Nov 08, 2004 4:15 pm

Post by aro77 »

I found:
hwnd = CreateWindowEx (
WS_EX_NOACTIVATE, /* Extended possibilites for variation */
szClassName, "Windows App",
WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT, CW_USEDEFAULT,
544, 375, HWND_DESKTOP, NULL, hThisInstance, NULL);


But SetExtraStyle(WS_EX_NOACTIVATE); not work.
aro77
In need of some credit
In need of some credit
Posts: 4
Joined: Mon Nov 08, 2004 4:15 pm

Post by aro77 »

SetWindowLong((HWND)this->GetHandle(), GWL_EXSTYLE, WS_EX_NOACTIVATE);

where "this" i my wxFrame. Sorry for this blog.
Post Reply