我有一個QTDesigner對話框,並帶有一個QDockWidget作爲主窗口小部件。當我停靠到主窗口並顯示對話框時,自動自動隱藏,但允許我使用鼠標顯示/隱藏它。我想默認情況下保持可見。 如果我使用鼠標將其大小調整爲大約2/3的屏幕大小,然後關閉對話框並稍後顯示,則即使我以最後一個大尺寸關閉應用程序,它也可以正常工作。QDockWidget啓動時自動隱藏
Theese是我clases:
/** created automatically by QT compiler */
class Ui_OfsIndSelAttribBase
{
public:
QWidget *dockWidgetContents;
QVBoxLayout *verticalLayout_10;
QGroupBox *_p_gB_Filters;
QVBoxLayout *verticalLayout_9;
QVBoxLayout *verticalLayout_4;
....
void setupUi(QDockWidget *dockWidget)
{
if (dockWidget->objectName().isEmpty())
dockWidget->setObjectName(QString::fromUtf8("dockWidget"));
dockWidget->resize(352, 789);
dockWidget->setFloating(false);
dockWidgetContents = new QWidget();
dockWidgetContents->setObjectName(QString::fromUtf8("dockWidgetContents"));
...
}
};
我的對話框分類:
class FCSDockableInputDataQt: public QDockWidget
{
Q_OBJECT
public:
/** GetMainWindow() returns a valid QT main window */
FCSDockableInputDataQt(Qt::DockWidgetArea do = Qt::BottomDockWidgetArea,
Qt::WFlags f=0) :
QDockWidget("MyDialog", GetMainWindow(), f)
{
....
}
};
/** this is my dialog management class */
class OfsIndSelAttribQt : public FCSDockableInputDataQt,
public Ui::OfsIndSelAttribBase
{
Q_OBJECT
OfsIndSelAttribQt() :
FCSDockableInputDataQt(Qt::RightDockWidgetArea)
{
setupUi(this);
setAllowedAreas(Qt::LeftDockWidgetArea | Qt::RightDockWidgetArea);
setFloating(false);
....
}
};