启用win32消息框中的关闭按钮
Enable Close button in Win 32 Message Box
我正在使用win32框架提供的MessageBox函数来显示Yes和No消息框。我需要保持启用关闭按钮(在右上角的X),但不幸的是,似乎只有当窗口也包含取消按钮可用。
这是真的还是有其他方法可以实现?
消息框的设计反映了平台的UX指南。在模态对话框中,如果呈现一个关闭按钮,用户需要清楚地知道该按钮会触发什么动作。平台的用户体验指南是关闭按钮执行取消操作。
所以,这就是为什么当且仅当对话框显示取消按钮时才启用关闭按钮的原因。这种设计让用户确信,当他们按下关闭按钮时,与对话框相关的操作将被取消。
在标准消息框中,API没有提供任何机制来破坏这种用户体验设计。如果您热衷于提供自己的用户体验设计,这与平台用户体验标准不同,那么您可以创建自己的对话框并使用它。一旦你创建了你自己的对话框,你就可以启用或禁用任何你喜欢的按钮。但是,我强烈建议您不要这样做。您打算呈现一个带有是/否问题的对话框,并使用关闭按钮表示否。这与主流平台的用户体验背道而驰,会让用户感到困惑。如果取消操作没有意义,那么不要提供关闭按钮,因为关闭按钮意味着取消。
相关文章:
- 可能的Qt5错误:调用setFixedSize()禁用主窗口的关闭按钮(在Win7下)
- 如何隐藏最大化和最小化按钮并在qml应用程序窗口中显示关闭按钮?
- Arduino上的打开和关闭按钮
- 如何抓住CTabView关闭按钮按下
- 在关闭按钮上设置未保存的文件标记
- 在 WTL 中使向导的"关闭"按钮灰显
- 禁用 Win32 中的最小化、最大化、关闭按钮
- 如何禁用按钮 - Win32 API
- QDialog 打开时允许 QMainWindow 上的关闭按钮
- 禁用QDialogs默认关闭按钮(左上角"cross button")?
- 如何在不影响 ALT+F4 或在任务栏中关闭窗口的情况下重新调整窗口关闭按钮的用途?
- 单击对话框关闭按钮时,正确中止线程
- 自定义最小-最大关闭按钮实现
- 如何处理笔记本上的电源关闭按钮
- 如何执行程序清理时,用户按下关闭按钮在c++控制台应用程序
- 启用win32消息框中的关闭按钮
- WinAPI:创建可调整大小的窗口,没有标题栏,但有最小化/最大化/关闭按钮(如Firefox/Chrome/Opera
- 使用关闭按钮关闭Opencv窗口
- 为什么快板自动处理最小化按钮,而不是关闭按钮
- 我似乎无法使用Qt::WindowFlags添加关闭按钮