2

我发现自己正在使用 GUI 代码,其中 GUI 程序需要输入焦点并保持在最上面的窗口,但是每当我使用 VS 调试时,使用 F5/F10/F11 单步执行都需要 VS 具有焦点。

是否有可能在被调试者有焦点时让 VS 拦截 F 键?如果 VS 没有这个功能,我想应该可以编写一个简单的程序或 VS 插件,它有一个键盘书并相应地命令调试器 - 有没有人开发过这样的程序?

我正在使用一个 GUI 测试自动化框架,它通过移动光标来发送鼠标点击和其他事件。当被调试程序失去焦点时,对其表面的任何单击都会将主窗口向前移动,但不会激活任何控件,但自动化框架会假定其应用程序的焦点永远不会被中断。因此,如果我在单击以打开“文件”菜单之前设置断点,则发送的单击只会恢复被调试者的焦点,而不会打开“文件”菜单(如果有意义的话)。

我已经进行了一些搜索,但无法立即找到任何东西。

4

1 回答 1

1

为什么需要保持专注?你在 GotFocus/LostFocus 中有特定的钩子吗?

我之前遇到过问题,一旦按下 F5 就会调用 Paint 事件,导致调试器再次显示,因此需要再次重新绘制。我只是通过安排我的窗户来解决这些问题,这样它们就不会重叠。我很确定当窗户以这种方式排列时,LostFocus/GotFocus 对也不会触发。

于 2012-10-09T19:47:40.143 回答