Slot implementieren und nutzen mit PyQt

Python und das Qt-Toolkit, erstellen von GUIs mittels des Qt-Designers.
Antworten
bonaire
User
Beiträge: 13
Registriert: Mittwoch 27. August 2008, 12:27
Wohnort: Karlsruhe

Hallo,


ich habe mein Problem schon einmal hier angesprochen, aber keine Antwort erhalten, weil es wohl zu speziell ist.

Ich bin gerade dabei, an einem Plasmoid für KDE4 zu basteln. Für den Plamoid benötige ich einen Mechanismus, der in der Api-Dokumentation zu Plasma so beschrieben ist:
registerWidget ( self, QGraphicsWidget widget )

Registers a widget with the tooltip manager.

Note that setContent() will register the widget if it has not already been registered, and so you do not normally need to use the method.

This is useful for creating tooltip content on demand. You can register your widget with registerWidget(), then implement a slot named toolTipAboutToShow for the widget. This will be called before the tooltip is shown, allowing you to set the data with setContent().

If the widget also has a toolTipHidden slot, this will be called after the tooltip is hidden.

Parameters: widget the desired widget
Ich scheitere im Moment daran, dass ich nicht weiß, wie man den genannten Slot-Mechanismus für toolTipAboutToShow implementiert. Muss man dafür eine Klasse von Plasma.IconWidget ableiten? Es wäre schön, wenn mir jemand erklären könnte, was ich hier tun muss oder in irgendeiner sonstigen Form eine Anregung liefern könnte.
Ich bin für jeden Ratschlag dankbar :)

cu
jerch
User
Beiträge: 1669
Registriert: Mittwoch 4. März 2009, 14:19

Hm, aus der Beschreibung werd ich auch nicht schlau. Erst das Widget registrieren (Laufzeitsache?) und dann den Slot implementieren? Komisch formuliert.
Prinzipiell agieren in PyQt alle Methoden als Slots (anders als in Qt), ob Du für das spezielle Problem irgendwelche Zusätze (z.B. einen Dekorator) brauchst, weiß ich auch nicht.

Probiers doch einfach mal aus und konsultiere im Zweifelsfalle Quelltext von anderen Plasmoids.
Antworten