如何使最小化和最大化按钮出现在wxDialog对象上

时间:2009-05-19 15:41:49

标签: c++ wxwidgets

我在Linux上使用wxDialog对象遇到了问题在对象的构造函数中,我传递了相关的样式标志(wxCAPTION|wxMINIMIZE_BOX|wxMAXIMIZE_BOX|wxCLOSE_BOX|wx_RESIZE_BORDER),但按钮没有显示出来。当我在wxformbuilder中设计类时,它们会出现在显示的设计中,但不会显示在我正在运行的应用程序中。

我目前正在使用wxWidgets 2.8.7并在Scientific Linux 5(RHEL 5)上运行。关于如何解决这个问题的任何建议或想法?

编辑:BTW,这与this question

有关

2 个答案:

答案 0 :(得分:1)

你能使用wxWindow而不是wxDialog吗?也许最小化对话框是没有意义的,但这些是应用程序窗口的常用操作。

答案 1 :(得分:1)

如果在wxGTK上创建一个对话框,那么在构造期间

gtk_window_set_type_hint(GTK_WINDOW(m_widget), GDK_WINDOW_TYPE_HINT_DIALOG);
调用

,使窗口管理器显示为此窗口显示的装饰。因此,如果您给它样式但没有显示按钮,那么您无能为力。在任何情况下,我认为在父框架被禁用时显示 wxFrame 也应该可以正常工作。