User:Axiom: Difference between revisions

    From KDE TechBase
    No edit summary
    Line 54: Line 54:


    </code>
    </code>
    You will need [[this file|User:Axiom/demo.ui]] too.

    Revision as of 22:48, 21 January 2007

    Axiom's sandbox

    I am just putting some stuff here right now, because you have such nice color coding in your wiki. Maybe I'll turn it into a tutorial if I figure out what I am doing.

    Dynamically Loading a .ui file

    I found this snippet here (french). I don't know if this is the right way to do it, but it seems to work.

    loadui.py

    import sys from PyQt4 import QtGui, uic

    app = QtGui.QApplication(sys.argv) widget = uic.loadUi("demo.ui") widget.show()

    1. La boucle principale

    app.exec_() Of course you will need to make a ui file called demo.ui for this to work.

    Connecting Buttons From Dynamically loaded .ui File

    This code really works.

    loaddialog.py

    import sys from PyQt4 import QtGui from PyQt4 import uic from PyQt4 import QtCore

    1. the class has to have the same base class as your UI

    class DemoImpl(QtGui.QMainWindow):

       def __init__(self, *args):
           QtGui.QMainWindow.__init__(self, *args)
    

    # just pass self uic.loadUi("mainWindow.ui", self)

       #this line makes sure that we are only looking for a string
       #if we want a bool as well we can add 	@QtCore.pyqtSignature("bool")
       @QtCore.pyqtSignature("")   
       def on_button1_clicked(self):
           print "You Clicked the button!"
       @QtCore.pyqtSignature("")
       def on_button2_clicked(self):
           print "You Clicked the button2!"	
    


    app = QtGui.QApplication(sys.argv) widget = DemoImpl() widget.show() app.exec_()


    You will need User:Axiom/demo.ui too.