Qt best way to invoke methods of QMainWindow from other widget



  • I have main window from type QMainWindow, then I set some widget and give this widget the QMainWindow as parent in its constructor , the QMainWindow passed as Object. now I need from this widget invoke method from the QMainWindow. what will be the best way to do it ?

    this is how the widget looks like:

    @DataListModel::DataListModel( QObject *parent ) :
    QStandardItemModel( 0, 0, parent )

    {
    // here I like to invoke some QMainWindow method?
    //can I cast somehow the parent ? or use some pointer ?

    }
    @



  • @
    QMainWindow mainWindow = qobject_cast<QMainWindow>(parent());
    if(mainWindow != 0)
    {
    ...
    }
    @



  • Or if you always pass a QMainWindow as parent, change the constructor to take only QMainWindow pointers as parent and save the parent in a class attribute.


Log in to reply
 

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