Python QtCreator - jak přistupovat k widgetům

martin

Python QtCreator - jak přistupovat k widgetům
« kdy: 26. 01. 2017, 20:36:20 »
Ahoj,
snazim se naucit zaklady Python+Qt4.
V QtCreatoru jsem si naklikal formular s LineEditem, Buttonem a Labelem.
Do pythonu se mi ho podarilo snadno nacist, ale neumim se dostat k widgetum.
Pro zacatek jsem se snazil, aby po kliknuti na tlacitko se prekopiroval text ze lineeditu do labelu.

Mohl by mi nekdo prosim poradit, jak na to? Asi spatne googlim.

https://gist.github.com/anonymous/cd063dce5113251e629c411893aa6eb6
https://dl.dropboxusercontent.com/u/6943408/qt.png
« Poslední změna: 27. 01. 2017, 09:16:28 od Petr Krčmář »


Re:Python QtCreator - jak přistupovat k widgetům
« Odpověď #1 kdy: 27. 01. 2017, 13:19:45 »
Trochu blíže bys to popsat nemohl?  Použij nástroj pyuic, přegeneruj si ten ui file a uvidíš co ti vygeneruje za třídu.
pyuic4 input.ui -o output.py; Z toho ti dojde jak jsou tam zanořené ty widgety.

mln

Re:Python QtCreator - jak přistupovat k widgetům
« Odpověď #2 kdy: 27. 01. 2017, 15:24:29 »
Alebo sa nauc C++ a k naklikanym widgetom pristupuj normalnym spôsobom stylom
Kód: [Vybrat]
ui->lineEdit
V tom QT editore sa daju pekne naklikat sloty aj prislušné signály a QT editor ti vygeneruje hrubu kostru C++ kodu.

Qt framework je dobry motivator naučiť sa C++. A potom budeš môcť využivať QT creator naplno namiesto prznenia slušného C++ frameworku a  zapasenia s kdejakymi python bindingami

daks

Re:Python QtCreator - jak přistupovat k widgetům
« Odpověď #3 kdy: 27. 01. 2017, 21:26:01 »
Událost kliknutí na tlačítko se dá v kódu napojit takto:

Kód: [Vybrat]
class MyApp(QtGui.QMainWindow, Ui_MainWindow):
    def __init__(self):
        ...
        self.pushButton.clicked.connect(self.onBtnClick)

    def onBtnClick(self):
        self.label.setText(self.lineEdit.text())