Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. General and Desktop
  4. Delete message after x seconds
QtWS25 Last Chance

Delete message after x seconds

Scheduled Pinned Locked Moved Solved General and Desktop
qtimerlabelremove text
25 Posts 5 Posters 10.1k Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • Q Offline
    Q Offline
    QT-static-prgm
    wrote on 22 Feb 2017, 15:21 last edited by
    #1

    Hi,

    I have a simple file with a few functions (no classes) and after X seconds (let's say 10) i want to hide a label. How would i do that??

    1 Reply Last reply
    0
    • S Offline
      S Offline
      SGaist
      Lifetime Qt Champion
      wrote on 22 Feb 2017, 15:46 last edited by
      #2

      Hi,

      With QTimer::singleShot for example.

      Interested in AI ? www.idiap.ch
      Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

      1 Reply Last reply
      2
      • G Offline
        G Offline
        gfxx
        wrote on 22 Feb 2017, 16:51 last edited by
        #3
        QTimer::singleShot(120, [=]{ emit mysignal(k::st_is_auto); });
        

        if you must send deleting signal from your void .... more than one of these :

        QTimer::singleShot(150, this, SLOT(PresentationWait()));
        

        not works properly on void but only on main .....

        regards
        giorgio

        bkt

        1 Reply Last reply
        0
        • Q Offline
          Q Offline
          QT-static-prgm
          wrote on 23 Feb 2017, 14:49 last edited by
          #4

          I just tried the singleshot but i get an error:

          Der Prozedureinsprungpunkt "?defaultTypeFor@QTimer@@CA?AQ4TimerType@Qt@@H@Z" wurde in der DLL "C:\Program Files\TeamSpeak 3 Client\plugins\qtTyOverlay_x64.dll" nicht gefunden.

          any ideas what this is about??

          M 1 Reply Last reply 23 Feb 2017, 14:56
          0
          • Q QT-static-prgm
            23 Feb 2017, 14:49

            I just tried the singleshot but i get an error:

            Der Prozedureinsprungpunkt "?defaultTypeFor@QTimer@@CA?AQ4TimerType@Qt@@H@Z" wurde in der DLL "C:\Program Files\TeamSpeak 3 Client\plugins\qtTyOverlay_x64.dll" nicht gefunden.

            any ideas what this is about??

            M Offline
            M Offline
            mrjj
            Lifetime Qt Champion
            wrote on 23 Feb 2017, 14:56 last edited by mrjj
            #5

            @QT-static-prgm
            well i think we need to see some code :)

            The error seems to be about qtTyOverlay_x64
            so its clearly not a normal setup.

            QTimer lives in
            QT += core
            so its never missing

            so you need to provide more info if we shall guess at what is going on.

            1 Reply Last reply
            1
            • Q Offline
              Q Offline
              QT-static-prgm
              wrote on 23 Feb 2017, 15:24 last edited by
              #6

              Yeah i didn't push it to the git server yet. But here you go:
              https://git.rwth-aachen.de/carstenf/CuteOverlay/blob/master/plugin.cpp

              M 1 Reply Last reply 23 Feb 2017, 15:47
              0
              • Q QT-static-prgm
                23 Feb 2017, 15:24

                Yeah i didn't push it to the git server yet. But here you go:
                https://git.rwth-aachen.de/carstenf/CuteOverlay/blob/master/plugin.cpp

                M Offline
                M Offline
                mrjj
                Lifetime Qt Champion
                wrote on 23 Feb 2017, 15:47 last edited by
                #7

                @QT-static-prgm

                Hmm. very strange. Does other class from Qt work ?

                1 Reply Last reply
                0
                • Q Offline
                  Q Offline
                  QT-static-prgm
                  wrote on 23 Feb 2017, 17:18 last edited by
                  #8

                  yeah the labels work fine.

                  But i noticed that my "stay always on top" does not work ingame. So when i play my game it is over my overlay plugin

                  1 Reply Last reply
                  0
                  • S Offline
                    S Offline
                    SGaist
                    Lifetime Qt Champion
                    wrote on 23 Feb 2017, 19:15 last edited by
                    #9

                    Which version of Qt are you using ?
                    What are you using to compile your plugin ?

                    Interested in AI ? www.idiap.ch
                    Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

                    1 Reply Last reply
                    0
                    • Q Offline
                      Q Offline
                      QT-static-prgm
                      wrote on 23 Feb 2017, 22:14 last edited by
                      #10

                      I have multiple versions of qt. To compile I use 5.8.0 compiled with VS x64.

                      In my environment variables I have an older version of qt x86 but I already changed that to the x64 version (I compiled with) and it didn't worked. Is there maybe a way to tell the code explicit what version should be used?? (already put all x64 dll in the directory of my plugin dll but didn't worked)

                      I know that ts3 uses qt as well but I don't know what version. But since I have the x64 version of ts it's something x64.

                      1 Reply Last reply
                      0
                      • S Offline
                        S Offline
                        SGaist
                        Lifetime Qt Champion
                        wrote on 23 Feb 2017, 22:20 last edited by
                        #11

                        Then you should first check which version of Qt TeamSpeak is using and its architecture.

                        Interested in AI ? www.idiap.ch
                        Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

                        1 Reply Last reply
                        0
                        • Q Offline
                          Q Offline
                          QT-static-prgm
                          wrote on 24 Feb 2017, 09:48 last edited by QT-static-prgm
                          #12

                          @SGaist it says nothing about the architecture. But the Software is x64 (I'm sure because x86 plugins do not work and it's installed to Program Files instead of Program Files x86)
                          The version is 5.6.1

                          ==EDIT==

                          the project setup was garbage. So i made a new clean project structure and pushed to this repo: https://git.rwth-aachen.de/carstenf/qtTsOverlay/tree/master

                          nothing changed, it's just on my local harddrive and the project link

                          1 Reply Last reply
                          0
                          • S Offline
                            S Offline
                            SGaist
                            Lifetime Qt Champion
                            wrote on 24 Feb 2017, 10:49 last edited by
                            #13

                            Then you should use the same version as they are to build your plugin.

                            Interested in AI ? www.idiap.ch
                            Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

                            1 Reply Last reply
                            1
                            • Q Offline
                              Q Offline
                              QT-static-prgm
                              wrote on 24 Feb 2017, 11:14 last edited by
                              #14

                              did qt 5.6 already supported lampda instead of slots??

                              M 1 Reply Last reply 24 Feb 2017, 11:48
                              0
                              • Q QT-static-prgm
                                24 Feb 2017, 11:14

                                did qt 5.6 already supported lampda instead of slots??

                                M Offline
                                M Offline
                                mrjj
                                Lifetime Qt Champion
                                wrote on 24 Feb 2017, 11:48 last edited by
                                #15

                                @QT-static-prgm
                                Hi
                                Its foremost a compiler thing. (c++11)
                                and then Qt
                                https://wiki.qt.io/New_Signal_Slot_Syntax

                                1 Reply Last reply
                                0
                                • Q Offline
                                  Q Offline
                                  QT-static-prgm
                                  wrote on 24 Feb 2017, 12:34 last edited by
                                  #16

                                  I just added an own QTimer to my program and removed the static signelshot. Now it looks like this:
                                  https://git.rwth-aachen.de/carstenf/qtTsOverlay/blob/master/overlaycontroller.cpp#L22

                                  But NOTHING happens. even after 30 sec there is still no output. Any ideas about that??

                                  While i'm playing a bit around with the qtimer and an other problem i compile qt 5.6.1 for vs x64. Hopefully the singleshot works then.

                                  M J.HilkJ 2 Replies Last reply 24 Feb 2017, 12:41
                                  0
                                  • Q QT-static-prgm
                                    24 Feb 2017, 12:34

                                    I just added an own QTimer to my program and removed the static signelshot. Now it looks like this:
                                    https://git.rwth-aachen.de/carstenf/qtTsOverlay/blob/master/overlaycontroller.cpp#L22

                                    But NOTHING happens. even after 30 sec there is still no output. Any ideas about that??

                                    While i'm playing a bit around with the qtimer and an other problem i compile qt 5.6.1 for vs x64. Hopefully the singleshot works then.

                                    M Offline
                                    M Offline
                                    mrjj
                                    Lifetime Qt Champion
                                    wrote on 24 Feb 2017, 12:41 last edited by mrjj
                                    #17

                                    @QT-static-prgm
                                    Hi
                                    This is wrong
                                    connect(m_timer, SIGNAL(timeout()), this, SLOT(debugPrint("HUHU")));

                                    You CANNOT add parameters/values to the connect. HUHU is 100% wrong.
                                    and please check the return value or use the new syntax.

                                    qDebug() <<" conn ok:" << connect(m_timer, SIGNAL(timeout()), this, SLOT(debugPrint()));

                                    and debugPrint should not have any paramters

                                    void OverlayController::debugPrint(QString text)

                                    Please read the docs
                                    http://doc.qt.io/qt-5/signalsandslots.html
                                    its very important to understand how it works.

                                    1 Reply Last reply
                                    1
                                    • Q QT-static-prgm
                                      24 Feb 2017, 12:34

                                      I just added an own QTimer to my program and removed the static signelshot. Now it looks like this:
                                      https://git.rwth-aachen.de/carstenf/qtTsOverlay/blob/master/overlaycontroller.cpp#L22

                                      But NOTHING happens. even after 30 sec there is still no output. Any ideas about that??

                                      While i'm playing a bit around with the qtimer and an other problem i compile qt 5.6.1 for vs x64. Hopefully the singleshot works then.

                                      J.HilkJ Offline
                                      J.HilkJ Offline
                                      J.Hilk
                                      Moderators
                                      wrote on 24 Feb 2017, 12:42 last edited by
                                      #18

                                      @QT-static-prgm

                                      connect(m_timer, SIGNAL(timeout()), this, SLOT(debugPrint("HUHU")));
                                      

                                      I'm pretty sure you can't give a Slot a parameter like that. You don't get an error because the old syntax checks signal slots during run not compile time.

                                      but in your console you should get an error warning when yiu start the programm concerning Signal/slot connection.

                                      //have you tried it like this ? since its qt5+ that you're using
                                      
                                      QTimer::signleShot(100, this, [=]{qDebug() << " huhu";});
                                      

                                      Be aware of the Qt Code of Conduct, when posting : https://forum.qt.io/topic/113070/qt-code-of-conduct


                                      Q: What's that?
                                      A: It's blue light.
                                      Q: What does it do?
                                      A: It turns blue.

                                      1 Reply Last reply
                                      0
                                      • Q Offline
                                        Q Offline
                                        QT-static-prgm
                                        wrote on 24 Feb 2017, 13:02 last edited by QT-static-prgm
                                        #19

                                        @J-Hilk please read the posts above. That causes a procedure error.

                                        @mrjj You are right. without parameter works it just fine.

                                        But i cannot use qDebug() since i don't have any console or something like that. My debugPrint(QString text) just writes to a new Label.

                                        ==UPDATE==

                                        https://git.rwth-aachen.de/carstenf/qtTsOverlay/blob/master/overlaycontroller.cpp

                                        That way it works just the way it should. After 5 sec the chat lines are hide and if you write something it is displayed again :D
                                        qt is still compiling, so when it's done i'm gonna test the singleshot

                                        M 1 Reply Last reply 24 Feb 2017, 13:16
                                        0
                                        • Q QT-static-prgm
                                          24 Feb 2017, 13:02

                                          @J-Hilk please read the posts above. That causes a procedure error.

                                          @mrjj You are right. without parameter works it just fine.

                                          But i cannot use qDebug() since i don't have any console or something like that. My debugPrint(QString text) just writes to a new Label.

                                          ==UPDATE==

                                          https://git.rwth-aachen.de/carstenf/qtTsOverlay/blob/master/overlaycontroller.cpp

                                          That way it works just the way it should. After 5 sec the chat lines are hide and if you write something it is displayed again :D
                                          qt is still compiling, so when it's done i'm gonna test the singleshot

                                          M Offline
                                          M Offline
                                          mrjj
                                          Lifetime Qt Champion
                                          wrote on 24 Feb 2017, 13:16 last edited by
                                          #20

                                          @QT-static-prgm
                                          Ok so you do not run program from Creator ?

                                          1 Reply Last reply
                                          0

                                          1/25

                                          22 Feb 2017, 15:21

                                          • Login

                                          • Login or register to search.
                                          1 out of 25
                                          • First post
                                            1/25
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • Users
                                          • Groups
                                          • Search
                                          • Get Qt Extensions
                                          • Unsolved