如果没猜错的“123456”是标题而已 FINDWINDOW 获取你的“123456”窗口句柄GetForegroundWindow 当前活动句柄如果当前句柄和FINDWINDOW的窗口句柄一样 你就可以用SENDKYES "TAB" 函数 转移焦点
两种办法:
在Form_Load事件里写:
文本框的名称Focus();
或设置文本框的默认焦点:
选择TextBox后在属性窗口里把TabIndex设为0,如果不行那就设为1(前提是TabStop是True的)
GetForegroundWindow
可以获取到有焦点的顶层窗口
获取有焦点的子窗口只能用GetFocus,但是如果当前顶层窗口属于其他线程,GetFocus将返回NULL。没有好的办法解决,除非AttachThreadInput或者用钩子(HOOK)
想了一下可以用AttachThreadInput先把当前线程的输入和焦点线程的输入连起来再GetFocus。
const DWORD tid = GetWindowThreadProcessId(GetForegroundWindow(),NULL);
AttachThreadInput(tid, GetCurrentThreadId(),TRUE);
HWND hWnd = GetFocus();
AttachThreadInput(tid, GetCurrentThreadId(),FALSE);
以上就是关于VB API使窗口获得焦点全部的内容,包括:VB API使窗口获得焦点、c#窗口启动 textbox怎么获取焦点、如何获得光标位置输入焦点窗口句柄等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)