diff --git a/src/qt/toplevel.cpp b/src/qt/toplevel.cpp index 79969cc52d..35a982f5ff 100644 --- a/src/qt/toplevel.cpp +++ b/src/qt/toplevel.cpp @@ -120,7 +120,15 @@ void wxTopLevelWindowQt::SetIcons( const wxIconBundle& icons ) void wxTopLevelWindowQt::SetWindowStyleFlag( long style ) { wxWindow::SetWindowStyleFlag( style ); - + + if ( HasFlag( wxCENTRE ) ) + { + Centre(); + } + + if(!GetHandle()) + return; + Qt::WindowFlags qtFlags = GetHandle()->windowFlags(); if ( HasFlag( wxSTAY_ON_TOP ) != qtFlags.testFlag( Qt::WindowStaysOnTopHint ) ) @@ -167,12 +175,7 @@ void wxTopLevelWindowQt::SetWindowStyleFlag( long style ) GetHandle()->setSizePolicy( QSizePolicy::Preferred, QSizePolicy::Preferred ); else GetHandle()->setSizePolicy( QSizePolicy::Fixed, QSizePolicy::Fixed ); - - if ( HasFlag( wxCENTRE ) ) - { - Centre(); } -} long wxTopLevelWindowQt::GetWindowStyleFlag() const { diff --git a/src/qt/window.cpp b/src/qt/window.cpp index d651bba261..4d034a08d6 100644 --- a/src/qt/window.cpp +++ b/src/qt/window.cpp @@ -741,6 +741,9 @@ void wxWindowQt::SetWindowStyleFlag( long style ) // qtFrame->setFrameShadow( QFrame::Plain ); // } + if(!GetHandle()) + return; + Qt::WindowFlags qtFlags = GetHandle()->windowFlags(); if ( HasFlag( wxFRAME_NO_TASKBAR ) )