QT - QTimer löst nicht Ereignis aus



  • habs grad getestet. Geholfen hat bei mir, das ich das Projekt entsprechend in einzelne Dateien aufgespalten hab (clockwidget.h, clockwidget.cpp und main.cpp)

    offensichtlich springt der moc sonst nicht an



  • Ich werds gleich mal testen ... hoffe das ich da nix mehr beachten muss ... (nehm mir immer diverse Tuts als Vorbild)



  • zwutz schrieb:

    habs grad getestet. Geholfen hat bei mir, das ich das Projekt entsprechend in einzelne Dateien aufgespalten hab (clockwidget.h, clockwidget.cpp und main.cpp)

    offensichtlich springt der moc sonst nicht an

    Alternativ kannst du auch die vom MO-Compiler erzeugten Dateien per Include einbinden, wenn es in einer Datei bleiben soll.



  • Funktioniert super ... konnte mich vor Messages gar nicht retten 😉 ... Timer läuft und Uhr zählt *jubel* Danke für die schnelle Hilfe.

    Wie meinste das mit der Alternative?

    @Admin / Mod ... hab mich inzwischen angemeldet ... bitte Titel auf glöst setzen.



  • ProgChild schrieb:

    Alternativ kannst du auch die vom MO-Compiler erzeugten Dateien per Include einbinden, wenn es in einer Datei bleiben soll.

    das problem ist ja gewesen, dass der moc gar keine Dateien erzeugt hat, die man einbinden hätte können 😉



  • zwutz schrieb:

    das problem ist ja gewesen, dass der moc gar keine Dateien erzeugt hat, die man einbinden hätte können 😉

    Da hilft es (meiner Erfahrung nach), wenn man nochmal qmake -project aufruft.



  • Ich hab mehrmals das ganze Compiler-(und Co)-Prozedere durchgemacht ... qmake -project, qmake, make ... alles ohne irgendeinen Effekt ... könnte sowas an irgendwelchen Programmen oder Versionen hängen (BUGS in vielleicht in einer neueren Version behoben)?



  • ProgChild schrieb:

    Da hilft es (meiner Erfahrung nach), wenn man nochmal qmake -project aufruft.

    nein, hilft in dem Fall garnix. Dadurch wird nur die qmake-Datei anhand der vorhandenen Dateien neu aufgebaut. Desweiteren sind in der qmake-Datei keinerlei Informationen für den moc enthalten

    Akaya schrieb:

    (BUGS in vielleicht in einer neueren Version behoben)?

    habs mit qt4.3.3 getestet. Aktuelle stable ist 4.3.4. Dahingehend gabs aber keine Änderungen (ich denke auch nicht, dass das ein Bug ist)



  • zwutz schrieb:

    nein, hilft in dem Fall garnix. Dadurch wird nur die qmake-Datei anhand der vorhandenen Dateien neu aufgebaut. Desweiteren sind in der qmake-Datei keinerlei Informationen für den moc enthalten

    Okay. In dem Punkt korregiere ich mich. Du brauchst kein qmake -project . Es reicht aus, wenn dein Programm in der Datei main.cpp gespeichert ist, darin ein

    #include "main.moc"
    

    einzufügen und qmake && make aufrufen, damit der MOC anspringt. Gerade mit QT 3.3.7 ausprobiert. (Weis nicht, ob das qmake überflüssig war).

    Wie ich ja vorher schon geschrieben habe.



  • ProgChild schrieb:

    Es reicht vollkommen aus, wenn dein Programm in der Datei main.cpp gespeichert ist, darin ein

    #include "main.moc"
    

    einzufügen, damit der MOC anspringt. Gerade mit QT 3.3.7 ausprobiert.

    hm... is mir neu... aber ok, nachdem ich eh immer alles in mehrere Dateien aufspalte und die main.cpp auch nur die main-Funktion enthält, konnt ichs ja net wissen ^^
    Probiers aber morgen mit Qt4 aus. Das interessiert mich jetzt



  • Hab noch ein neues Problem ...

    Die Anwendungs selbst läuft jetzt Fehlerfrei (abgesehen, dass meine Uhr ne halbe Sekunde vor der Windowsuhr läuft ;)) aber ich kann den segmentSyle der LCDs nicht ändern.

    Müsste ja eigentlich so funktionieren:

    HourLCD -> setSegmentStyle(Filled);
    

    bzw.

    HourLCD -> segementStyle = Filled;
    

    (Der Code wurde nach der Initialiserung im Konstruktor (wie im ersten Beitrag) eingefügt.)
    Header QTGui ist eingefügt (denke es müssten dadurch fast alle Graphischen Komponenten bekannt sein).

    Auch über das Ansprechend der Eigenschaft durch die im enum zugewiesene Nummer ( Filled entspricht ja nach QTAssistent dem Wert 1) läuft nicht. Der Compiler (make) bringt jedes mal diverse Fehler.

    Kann mir jemand weiterhelfen?


Anmelden zum Antworten