我正在使用winit 在锈蚀中创建一个新窗口。我的程序最初创建一个CLI,GUI窗口是根据CLI中用户的可选输入创建的。如何关闭新创建的窗口而不退出进程并完全关闭程序。
我看到的文档和示例都使用ControlFlow::Exit来处理CloseRequested事件,但该退出来自整个程序;我只想关闭创建的窗口并继续运行CLI中的其余代码。如果有一个特定于操作系统的命令,我的目标是windows操作系统.
发布于 2022-10-24 03:43:49
若要关闭窗口,只需删除Window对象即可。
但是,我怀疑您可能也希望退出事件循环。这在所有平台上都是不可能的,这就是为什么您没有经常看到有关它的文档。要运行事件循环并有退出它的机会,请使用winit::platform::run_return::EventLoopExtRunReturn::run_return(),这是只在那些可以支持从事件循环(包括Windows)返回的平台上实现的特性。在该run_return()中,使用事件处理程序中的ControlFlow::Exit将控制返回到调用函数,而不是退出进程。
您也可以做这些事情之一,而不是使用run_return()。
winit事件循环中使用CLI接口运行。https://stackoverflow.com/questions/74175743
复制相似问题