[SOLVED]CloseEvent() when closing of a QDocWidget created with Designer?

  • Hello
    I built my application with Qt Designer for the UI part. A main window (QWidget) where does the program, and several auxiliary Windows (QDockWidget) I call to make the settings.
    An auxiliary window appears when the menu is selected (Preferences…).
    My program begins with

    // My_MainWindow Constructor
    My_MainWindow::My_MainWindow(QWidget *parent) :
    ui(new Ui::My_MainWindow)
    prefAction = new QAction("&Preferences", this);
    connect(prefAction, SIGNAL(triggered()), this, SLOT(preferenceAct()));

    // SLOT preferenceAct
    void My_MainWindow::preferenceAct(void)

    I close prefDockWidget by the close button (X). How to use the event generated?
    I think I have to redefine the XXXX::CloseEvent(QCloseEvent *event) method that is called at this time.
    How to do this from the only info I have: ui-> prefDockWidget?

  • QDockWidget has "toggleViewAction":http://qt-project.org/doc/qt-4.8/qdockwidget.html#toggleViewAction method which returns pointer to QAction.
    Then connect your slot to "QAction::toggled":http://qt-project.org/doc/qt-4.8/qaction.html#toggled When "checked" parameter is true, your dock widget is showed, else is closed

  • Thanks cincirin, it works perfectly!

Log in to reply

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.