如何在wxwidgets中使用“新的”公共项目对话框?

时间:2019-09-10 17:20:18

标签: c++ windows wxwidgets uiappearance

我想使用wxwidgets创建一个文件打开对话框,该对话框使用Win-Vista及更高版本下“公共项”对话框的“新”样式。有什么办法可以做到这一点?使用wxFileDlg()我得到一个如右图所示的对话框,但是我想得到左边的对话框... both dialogs

2 个答案:

答案 0 :(得分:0)

wxWidgets中包含的dialogs示例显示了如果您使用例如“ “对话框|文件操作|保存对话框”菜单项(或仅按Ctrl + S),没有什么特别的事情要做。如果这对您不起作用,请检查您是否是

  1. 不使用一些古老的wxWidgets。
  2. 您的应用程序中有正确的清单。
  3. 在对话框中不使用任何自定义控件,因为只有旧样式版本才支持这些自定义控件。

答案 1 :(得分:0)

我今天为此感到挣扎,以为我会在这里发布下一个有同样问题的人。如果我猜到了,您的代码正在调用dialog.Center()dialog.CenterOnParent()。我已经详细解释了为什么发生这种情况here

从我今天所有的时间中,您必须选择是要使用旧的公共控制对话框并使其居中,还是要使用新的公共项目对话框并使其出现在窗口的左上角

好消息是Visual Studio,Word,Excel,Firefox,Chrome和许多其他工具都使用了新对话框,并且都在应用程序窗口的左上方打开。