views:

2314

answers:

2

I have a parent window in which a push-button's click event function has the following lines:

SplashScreenDialog *splScrDlg = new SplashScreenDialog(this); splScrDlg->show();

What I want is I want to remove the maximize button, minimize button, close button and also the title bar from the dialog(or window). [Actually it is for a splash screen, it would contain an image for a while and then would exit automatically and opens the main window, you are welcome with other ideas for showing splash screen]

+3  A: 

Why not using QSplashScreen?

Example extracted from the assistant:

 int main(int argc, char *argv[])
 {
     QApplication app(argc, argv);
     QPixmap pixmap(":/splash.png");
     QSplashScreen splash(pixmap);
     splash.show();
     app.processEvents();
     ...
     QMainWindow window;
     window.show();
     splash.finish(&window);
     return app.exec();
 }
Cătălin Pitiș
Thanks man. It works but the image is shown for too short a time as I right now don't have much things to load. I want to keep the image open for at least 2 seconds. What to do?
Samir
Create a single-shot timer and close the splashscreen from there.
Lukáš Lalinský
+2  A: 

Why not use QSplashScreen for this? Anyway, you can set window flags to remove the window decoration. See the documentation for QWidget::setWindowFlags and Qt::WindowFlags.

Lukáš Lalinský
Thanks, QSplashScreen is the solution for me, I'm new in QT so...
Samir