我在用贝维写各种图形测试。每次生成GUI,运行几秒钟,然后退出应用程序并转移到下一个应用程序。
我喜欢能直观地检查它在做我想做的事情,但是当每一个开始的时候,它都会从VS代码中窃取焦点。这意味着我不能在测试运行时编写代码,也不能使用“热重加载”工作流。
我知道贝维在引擎盖下使用Winit,但是在打开一个没有焦点的窗口时,在贝维插件或Winit源中找不到任何东西,或者一旦打开就放弃焦点。
我理想的解决方案是在WindowDescriptor中设置一个简单的设置
App::new()
.insert_resource(WindowDescriptor {
// this would be awesome
open_without_focus:true,
..Default::default()
})
.run()几个注意事项:
发布于 2022-10-28 01:28:48
不太理想,但我发现用Alt+Escape调用尼戈总比什么都不想要好:
use enigo::*;
pub fn surrender_focus(){
let mut enigo = Enigo::new();
enigo.key_down(Key::Alt);
enigo.key_click(Key::Escape);
enigo.key_up(Key::Alt);
}
fn main(){
App::new()
.add_startup_system(surrender_focus)
.run()
}https://stackoverflow.com/questions/74229441
复制相似问题