踩坑tauri配置关闭窗口保持后台运行
正确的写法
tauri::Builder::default()
.build(tauri::generate_context!())
.expect("error while running tauri application")
.run(|app, event| match event {
tauri::RunEvent::WindowEvent {
label,
event: win_event,
..
} => match win_event {
tauri::WindowEvent::CloseRequested { api, .. } => {
let win = app.get_window(label.as_str()).unwrap();
win.hide().unwrap();
api.prevent_close();
}
_ => {}
},
_ => {}
});
- 以上代码表示点击窗口关闭按钮后,只是隐藏窗口,不退出。
- 如果不写隐藏窗口这个代码,窗口就会被关闭,进程依然保持后台运行,后续如果再继续操作窗口对象时就会闪退。
- 仔细核对这个代码的顺序,如果跟我一样是rust小白的话,就不要自己乱搞,保持方法执行的顺序和以上代码一致,先build、然后expect、再run,如果有设置菜单栏的方法,添加在build前面,千万别搞错顺序,搞错顺序跑不起来的。
闲叙
rust真的是太难了,对于我这种写习惯了java、js这些语言的,想不系统学习rust直接写代码,简直是难如登天,很多东西都很难查,难搞!!!!!
评论区