Seite 1 von 1

Objekte anlegen

Verfasst: 28. Februar 2006 18:53
von dereulenspiegel
Hi!

Ich habe folgendes Problem. Mit dem Designer habe ich mir eine Oberfläche gemalt. Die kann sich im Verlauf der Entwicklung aber noch weiter ändern oder wachsen. Daher habe ich mir gedacht, dass ich Zeiger auf Timer in der Klasse meines "Fenster-Widgets" schreibe und im Konstruktor dann die Zeiger initialisiere mit "timer = new QTimer(this)". Dann wollte ich auch gleich im Konstruktor mit"connect(timer, SIGNAL(timeout()), SLOT(showtemp()));" den timer gleich mit der Funktion showtemp() verknüpfen. Dann wollte ich den Timer natürlich starten. Aber sobald der Timer die Funktion startet stürzt das Programm ab. An der Funktion kann es nicht liegen die kommt aus einem anderen Programm, das funktioniert. Für Hilfe wäre ich wirklich sehr dankbar.

Danke im Voraus.

Verfasst: 28. Februar 2006 19:59
von madRenEGadE
wie wäre es mit bisschen code :wink:

also ich mach timer immer so:

Code: Alles auswählen

QTimer* timer;
timer = new QTimer(this);
timer->start(10000);

QObject::connect(timer, SIGNAL(timeout()), this, SLOT(meinSlot()));
PS: was mir manchmal passiert ist, das ich das new vergesse da kommt nämlich keine fehlermeldung aber das prog stürzt ab

Verfasst: 28. Februar 2006 20:19
von Querdenker
Hi Eulenspiegel,

warum hälst Du Dich nicht an das Beispiel von TrollTech: QMainWindow zu reimplementieren? Darin würde ich z.B. Pointers auf Timers mappen. Nur darin machen sie auch wirklich Sinn, weil sie zur Nachrichten-Queque schlechthin gehören.
Man kann nicht wild durch die Klassen verzeigern, das ist nicht oop like. ;)

Verfasst: 28. Februar 2006 23:25
von dereulenspiegel
Ok, das new hatte ich vergessen, so etwas dummes. Und ich habe mich schon todgesucht. Dake.

Verfasst: 1. März 2006 16:58
von madRenEGadE
jaja dieses verflixte new ^^ wenigsten bin ich nich der einzige dem sowas passiert... 8)