Signals und Slots in QT4

Autor

Dienstag, 12. Juni 2007 17:57:56

Nachdem ich mich nun seit ca. 2 Jahren nicht mehr mit QT-Programmierung befasst habe, versuche ich nun in QT4 einzusteigen und habe mir mit dem Designer ein UI für das Hauptfenster erstellt und im Groben das Programm angefangen.

Nun habe ich angefangen, einige Prozeduren zu schreiben, die bei bestimmten Widget-Events aufgerufen werden sollen. Dabei musste ich jedoch feststellen, daß es nicht möglich zu sein scheint, über den QT-Designer direkt auf eigene Slots zuzugreifen. Vielmehr scheinen nur Verbindungen zwischen zwei Widgets innerhalb der selben UI-Datei möglich zu sein. Also versuchte ich in die Hauptroutine Anweisungen einzubinden, die da für sorgen, daß z.B. beim Klick eines bestimmten Buttons eine bestimmte Prozedur aufgerufen wird. Da aber nun für das verwendete UI eine eigenständige Klasse definiert wird, weiss ich nicht so ganz, wie ich in der Hauptroutine heraus eine gültige Verbindung erstellen kann. Eine Anweisung wie diese funktioniert nicht:

QWidget::connect(&Ui_SC4Config::pushButton_quit,SIGNAL(clicked()),&app,SLOT(quit()));

Da das Programm einen sehr komplexen Dialog verwendet, der ständig verändert wird, habe ich nicht vor, den C++ Code, der aus dem UI erzeugt wird zu modifizieren oder zu verwursten.

Kann ich irgendwie eine Verbindung im Code oder über den Designer erzeugen, ohne dabei die Header- Datei, die der QTDesigner erzeugt verändern zu müssen?

GoaSkin

0 Antworten


Antworten

Ähnliche Artikel

  • K-splitter
  • Fortgeschrittenes Basteln
    Plasmoiden erweitern den KDE-4-Desktop um sinnvolle Anwendungen. KDE-Entwickler Sebastian Kügler erklärt, wie Sie die kleinen Helfer programmieren.
  • Adventskalender in C++
    Wieder einmal steht die Adventszeit völlig unerwartet vor der Tür. Doch zum Glück zaubern Gideon und ein wenig C++ schnell einen hübschen KDE-Adventskalender für Freunde, Verwandte und Bekannte, während man selbst ein wenig programmieren lernt.
  • GUI-Programmierung mit Qt Designer
    Wenn die Englisch-, C++- und Qt-Kenntnisse ausreichen, macht der Qt Designer grafische Benutzeroberflächen (GUIs) per Mausklick möglich.
  • Adventskalender mit C++ und Qt
    Es müssen nicht immer Schokoladefigürchen sein: Ein Bilderadventskalender lässt sich auch als GUI-Programm gestalten und eignet sich hervorragend zum Einstieg in die C++-Programmierung.

Tipp der Woche

Ubuntu 14.10 und VirtualBox
Ubuntu 14.10 und VirtualBox
Tim Schürmann, 08.11.2014 18:45, 2 Kommentare

Wer Ubuntu 14.10 in einer virtuellen Maschine unter VirtualBox startet, der landet unter Umständen in einem Fenster mit Grafikmüll. Zu einem korrekt ...

Aktuelle Fragen

Start-Job behindert Bootvorgang, Suse 13.2, KDE,
Wimpy *, 20.02.2015 10:32, 4 Antworten
Beim Bootvorgang ist ein Timeout von 1 Min 30 Sec. weil eine Partition sdb1 gesucht und nicht gef...
Konfiguration RAID 1 mit 2 SSDs: Performance?
Markus Mertens, 16.02.2015 10:02, 4 Antworten
Hallo! Ich möchte bei einer Workstation (2x Xeon E5-2687Wv3, 256GB RAM) 2 SATA-SSDs (512GB) al...
Treiber für Canon Laserbase MF5650
Sven Bremer, 10.02.2015 09:46, 1 Antworten
Hallo ich weiß mittlerweile das Canon nicht der beste Drucker für ein Linux System ist. Trotzd...
Linux und W7 im Netz finden sich nicht
Oliver Zoffi, 06.02.2015 11:47, 3 Antworten
Hallo! Ich verwende 2 PCs, 1x mit W7prof 64 Bit und einmal mit Linux Mint 17 64 Bit, welches ich...
Rootpasswort
Jutta Naumann, 29.01.2015 09:14, 1 Antworten
Ich habe OpenSuse 13.2 installiert und leider nur das Systempasswort eingerichtet. Um Änderungen,...

Jetzt auf den Mailinglisten

Re: [EasyLinux-Ubuntu] SSD TRIM
Heiko, 05.03.2015 10:18
Am Donnerstag, 5. März 2015, 09:28:29 schrieb H.-Stefan Neumeyer: > Am Donnerstag, 5. März 2015, 06:07:36...
Re: [EasyLinux-Ubuntu] SSD TRIM
Joachim Puttkammer, 05.03.2015 10:07
Am Donnerstag, 5. März 2015 schrieb H.-Stefan Neumeyer: > Online Discard verwendet keiner? ich, hab es i...
Re: [EasyLinux-Ubuntu] SSD TRIM
Wolfgang Völker, 05.03.2015 09:49
Hallo Stefan, exakt, hatte vergessen die Jobparameter zu schreiben, aber du kennst die ja: -) "H.-Stef...
Re: [EasyLinux-Ubuntu] SSD TRIM
"H.-Stefan Neumeyer", 05.03.2015 09:28
Am Donnerstag, 5. März 2015, 06:07:36 sprach Wolfgang Voelker und nicht Zarathustra: Hallo Wolfgang >...
Re: [EasyLinux-Ubuntu] SSD TRIM
Wolfgang Völker, 05.03.2015 06:07
Hallo Stefan, mit einem anacron job Gruß Wolfgang "H.-Stefan Neumeyer" schrieb am 04.03..2015...