QWidgetList QApplication::topLevelWidgets () [static]
Возвращает список окон верхнего уровня, если у тебя такое окно одно, то можно сделать что-то типа:
C++ (Qt)
MainWindow *nw = qobject_cast<MainWindow*>( QApplication::topLevelWidgets()[ 0 ] );
Можно самому сохранять указатель на главное окно:
C++ (Qt)
class MainWindow : public QMainWindow
{
public:
MainWindow(...)
{
Q_ASSERT_X( !m_instance, "Build MainWindow", "Объект главного окна уже создан" );
m_instance = this;
}
static MainWindow *instance()
{
Q_ASSERT_X( m_instance, "Get instance MainWindow", "Объект главного окна не создан" );
return m_instance;
}
private:
static MainWindow *m_instance = 0;
};
Думаю еще много чего можно придумать.