[python] PyQt a vybraný widget v QDialogu
Martin Stiborský
martin.stiborsky na gmail.com
Pátek Říjen 30 03:11:07 CET 2009
Dobrý den přeji.
Potřeboval bych poradit prosím.
V programu používám QDialog k vytvoření nabídky, kde si uživatel
vybere jeden z několika spinboxů a program se podle toho dál chová.
Zasekl jsem se na způsobu, jak z QDialogu předat informaci který
spinbox byl vybrán. Momentálně jsem to vymyslel tak, že se v cyklu
projdou všechny spinboxy a najde se ten, který je vybrán, připadá mi
to trochu těžkopádné. PyKDE obsahuje widget QButtonGroup, který má
signál changed(int) nebo clicked(int) a ten vrací číselný index
widgetu, na který se kliklo, to je paráda, akorát neumím propojit
jmenný prostor dialogu a aplikace, aby se ti dva dorozuměli.
Sepsal jsem to do kódu ..
# -*- coding: utf-8 -*-
from PyQt4 import QtCore
from PyQt4 import QtGui
import sys
from main import Ui_MainWindow
from dialog import Ui_Dialog
class Okynko(QtGui.QMainWindow):
def __init__(self):
QtGui.QMainWindow.__init__(self)
self.ui = Ui_MainWindow()
self.ui.setupUi(self)
@QtCore.pyqtSlot()
def otevriDialog(self):
dialog = QtGui.QDialog()
dialogUi = Ui_Dialog()
dialogUi.setupUi(dialog)
return dialog.exec_()
def main():
app = QtGui.QApplication(sys.argv)
window = Okynko()
window.show()
sys.exit(app.exec_())
if __name__ == "__main__":
main()
Definice grafiky, jak mi ji vyplivlo pyuic z ui souboru Qt Designeru je zde:
okýnko aplikace s čudlikem: http://www.clipboard.cz/87g
dialog s pár spinboxy: http://www.clipboard.cz/97g
Bohatě by mi stačilo popostrčit teorií, moc dík za pomoc.
--
S pozdravem
Martin Stiborský
Jabber: stibi na njs.netlab.cz
ICQ: 224-065-849
Další informace o konferenci Python