Textfeld in Toolbar

Python und das Qt-Toolkit, erstellen von GUIs mittels des Qt-Designers.
Antworten
UPX
User
Beiträge: 3
Registriert: Dienstag 23. September 2014, 10:26

Hallo,
ich bin noch ziemlich ein Anfänger in Python und wüsste gerne ob/wie es möglich ist, eine Textbox in eine Toolbar (ohne Tkinter) ein zu bauen?

Hier meine bisherige Toolbar mit Buttons:

Code: Alles auswählen

        playAction = self.createAction("&Play...", self.play,
                self.playbtn, "play", "Play")

        playToolbar = self.addToolBar("Play")
        playToolbar.setObjectName("PlayToolBar")
        self.addActions(playToolbar, (playAction))

    def createAction(self, text, slot=None, shortcut=None, icon=None,
                     tip=None, checkable=False, signal="triggered()"):
        action = QAction(text, self)
        if icon is not None:
            action.setIcon(QIcon(":/%s.png" % icon))
        if shortcut is not None:
            action.setShortcut(shortcut)
        if tip is not None:
            action.setToolTip(tip)
            action.setStatusTip(tip)
        if slot is not None:
            self.connect(action, SIGNAL(signal), slot)
        if checkable:
            action.setCheckable(True)
        return action
Danke und Lg!
Benutzeravatar
Hyperion
Moderator
Beiträge: 7478
Registriert: Freitag 4. August 2006, 14:56
Wohnort: Hamburg
Kontaktdaten:

Wärst Du noch so lieb, uns das GUI-Toolkit oder Framework zu benennen? Ich lese da ``QAction`` und mutmaße mal, dass es sich um Qt handelt. Aber eine Bestätigung wäre da schon ganz nett ;-) (Zumal irreführender Weise "Tkinter" explizit erwähnt wird)

(Evtl. wäre der Thread dann auch in einem passenden Sub-Forum besser aufgehoben - ggf. würde ich den dann verschieben)
encoding_kapiert = all(verstehen(lesen(info)) for info in (Leonidas Folien, Blog, Folien & Text inkl. Python3, utf-8 everywhere))
assert encoding_kapiert
UPX
User
Beiträge: 3
Registriert: Dienstag 23. September 2014, 10:26

Hyperion hat geschrieben:Wärst Du noch so lieb, uns das GUI-Toolkit oder Framework zu benennen?
Entschuldige! :wink:
PyQt4
Benutzeravatar
Hyperion
Moderator
Beiträge: 7478
Registriert: Freitag 4. August 2006, 14:56
Wohnort: Hamburg
Kontaktdaten:

Ein simples googlen brachte ``AddWidget`` auf der Toolbar zu Tage... evtl. reicht das?
encoding_kapiert = all(verstehen(lesen(info)) for info in (Leonidas Folien, Blog, Folien & Text inkl. Python3, utf-8 everywhere))
assert encoding_kapiert
UPX
User
Beiträge: 3
Registriert: Dienstag 23. September 2014, 10:26

Hyperion hat geschrieben:... evtl. reicht das?
Leider nein ... vielleicht könntest du mir ein kleines Beispiel schreiben.
BlackJack

@UPX: Warum reicht das nicht? Was hast Du gemacht, und was ist daraufhin passiert?
jerch
User
Beiträge: 1669
Registriert: Mittwoch 4. März 2009, 14:19

Klappt bei mir wunderbar (auf die Schnelle und nicht layoutet):

Code: Alles auswählen

from PyQt4 import QtGui
class MyWidget(QtGui.QWidget):
    def __init__(self, parent=None):
        QtGui.QWidget.__init__(self, parent)
        self.tb = QtGui.QToolBar(self)
        self.tb.addAction('Test')
        self.tb.addWidget(QtGui.QLineEdit())

app = QtGui.QApplication([])
w = MyWidget()
w.show()
app.exec_()
Antworten