我只想问一下Ruby中的哪个命令可以让您检查Ruby中创建的应用程序或正在运行的应用程序是否即将关闭?例如,我运行了一个可执行文件,然后单击了窗口上的关闭按钮。我想弹出一个对话框,提示“您将要关闭”。按下“确定”按钮后,窗口最终关闭。
如何在Ruby中做到这一点?
答案 0 :(得分:1)
我不知道事情在Ruby中如何工作,但是通常在Windows上,当窗口收到关闭请求时,其窗口过程会收到一条WM_CLOSE
消息。在这里向用户显示提示。如果应用随后要阻止该窗口关闭(因为用户要拒绝该窗口等),则该应用可以直接跳过销毁该窗口,而不将消息传递给默认消息处理程序(DefWindowProc()
)
如果用户单击窗口的关闭按钮,或者从窗口的弹出系统菜单中选择“关闭”选项,或者在窗口焦点对准时按 ALT-F4 ,则该窗口会收到一条WM_SYSCOMMAND(SC_CLOSE)
消息,如果该消息传递给默认消息处理程序,则该窗口会收到WM_CLOSE
消息。
获取该信息,并根据需要将其转换为Ruby。