Hallo,
ich möchte einige kleinere Programme schreiben, die sich möglichst harmonisch in die KDE-Oberfläche integrieren. Mir erschien dafür die Verwendung von Python zusammen mit den Qt/KDE-Bindings geeignet. Also habe ich kdevelop, qt3-designer und ein paar andere Pakete installiert. Meine Fragen/Probleme:
(1) Wenn ich im QT-Designer einen Dialog mit KDE-Widgets erstelle (z.B. KIconView) kann ich mir zwar daraus Python-Code generieren lassen, aber dieser läuft nicht, weil Python das Modul kde nicht findet. Offensichtlich fehlt mir pykde, dass es aber wohl nicht über apt für Debian Testing zur Verfügung steht. Gibt es irgendwo schon ein deb-Paket dafür oder muss man sich pykde aus den Quellen selber bauen? Gibt es da ein Howto für Debian?
(2) Auf Anhieb habe ich kein Widget für hierarchische Baumansichten (TreeViews) gefunden. Gibt es ein solches Widget für Qt/KDE und kann ich es aus Python heraus nutzen?
Viele Grüße, Jochen
KDE-Programmierung mit Python
-
- Beiträge: 69
- Registriert: 26.06.2004 22:29:20
- Wohnort: Bergisch Gladbach
-
Kontaktdaten:
-
- Beiträge: 69
- Registriert: 26.06.2004 22:29:20
- Wohnort: Bergisch Gladbach
-
Kontaktdaten:
Danke für den Hinweis. leider gibt es dieses Paket python-kde3 nur in SID/Unstable, ich benutze jedoch ein Sarge/Testing. Also ist das nicht ganz so einfach; ob ich das Paket über apt-pinning installieren kann, weiß ich nicht, weil ich apt-pinning noch nicht verwendet habe. Würde das funktionieren?Dookie hat geschrieben: versuchs mal mit apt-get install python-kde3 python-qt3
Dookie
Nachtrag:
Wahrscheinlich ist es doch keine gute Idee, python-kde3 aus Sid auf einem Sarge-System zu installieren, weil apt-get dann offensichtlich mehrere KDE-Libraries aktualisieren will. Daher lasse ich das lieber bleiben und installiere ggf. SID auf einer anderen Partition.
Hi!
Zum Thema Tree-View: Ist vielleicht QListView wonach Du suchst?
Gruß, mawe
Zum Thema Tree-View: Ist vielleicht QListView wonach Du suchst?
Code: Alles auswählen
import sys
from qt import *
class MainWindow(QMainWindow):
def __init__(self, *args):
apply(QMainWindow.__init__, (self,) + args)
self.tree = QListView(self)
self.setCentralWidget(self.tree)
self.tree.addColumn("item")
self.tree.setRootIsDecorated(1)
self.items=[]
self.items.append(QListViewItem(self.tree, "testself1"))
self.items.append(QListViewItem(self.items[-1], "child 1"))
self.items.append(QListViewItem(self.items[-2], "child 2"))
def main(args):
app=QApplication(args)
win=MainWindow()
win.show()
app.connect(app, SIGNAL("lastWindowClosed()"),
app, SLOT("quit()"))
app.exec_loop()
if __name__=="__main__":
main(sys.argv)
-
- Beiträge: 69
- Registriert: 26.06.2004 22:29:20
- Wohnort: Bergisch Gladbach
-
Kontaktdaten: