ForumSignals und Slots in QT4
GoaSkin – Dienstag, 12. Juni 2007 17:57 Uhr

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?