QSplash screen turns black on repeated mouse click and sometimes app crashes.



  • Hi,
    I am using QSplashScreen for bring out a splashscreen for my application. The splash screen is supposed to wait for about 2 sec and disappear.

    While going through the qsplashscreen code , I saw that on any mouse press event on the splashscreen we are hiding the spalshscreen.

    But, sometimes the splashscreen doesn't disappear immediately, and if I keep on pressing on the splash screen the transparent background of the splashscreen becomes black. Then the application either crashes or closes and splashscreen and resumes to work. And if I don't click on the splashscreen the app runs smoothly.

    I am using QT 4.8.5.

    Why do I get a black background for the splash screen when I click on it repeatedly? Does the app crash has anything to do with the spalshscreen clicks?

    I received the 0xc0000005 error and exception code when i tried to debug the mini dump generated on the app crash.

    BUGCHECK_STR: APPLICATION_FAULT_INVALID_POINTER_READ_FINALIZER_CALL

    PRIMARY_PROBLEM_CLASS: INVALID_POINTER_READ_FINALIZER_CALL

    DEFAULT_BUCKET_ID: INVALID_POINTER_READ_FINALIZER_CALL


  • Lifetime Qt Champion

    Hi,

    You should also add on which OS your a running into this



  • [quote author="SGaist" date="1401828357"]Hi,

    You should also add on which OS your a running into this[/quote]

    I am running it in Windows 7 64 bit machine


  • Lifetime Qt Champion

    Can you try with 4.8.6 ?



  • [quote author="SGaist" date="1401864570"]Can you try with 4.8.6 ?[/quote]

    I am working on a small portion of a big project. I am not sure about migrating from one Qt version to other immediately.

    I have one more matter of concern. The black background for the splash screen comes only if my PC is heavily loaded and I click on the application repeatedly. It doesn't matter whether I am clicking on the splash screen or the app window, the splash screen background goes black. If I kept on clicking the application window, the application becomes non responsive , but after a while the window comes back to normal state. But during the non responsive state if I click on the splash screen I get error similar to the following error (app is different):

    !http://obinshah.files.wordpress.com/2011/01/non-responsive-programs.jpg(Non responsive app)!

    Why does it goes to this state only when i click on splash screen ?

    Even though the pop up comes once the app is loaded the pop up disappears and starts working.

    Is there any way to avoid this popup?


  • Lifetime Qt Champion

    You application is busy doing some work (initialization, waiting on something) So if the system is already heavily loaded, your software already doing some work/waiting on something then that message is completely normal



  • [quote author="SGaist" date="1401913404"]You application is busy doing some work (initialization, waiting on something) So if the system is already heavily loaded, your software already doing some work/waiting on something then that message is completely normal[/quote]

    Is there any way I can disable all the events ,meaning even before using show of the splash screen i will disable all the events.I already tried using setDisable(true),but that did not seem to do the job for me.Any suggestions???



  • The application is probably going through a lot of loops while your splash screen is showing, right?
    In those loops, you need to call
    @QApplication::processEvents()@

    for the application to be able to process all other events. Otherwise the loops will block the GUI.
    This will enable the QProgressBar (if you have one in your splash screen) to animate correctly as well.


Log in to reply
 

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