.. done little step ahead :

import sys
from PyQt4 import QtCore, QtGui
import time

class MyThread(QtCore.QThread):
    def run(self):
                n = 0
                step = 1
                while True:
                        n += step
                        print n


class Gui(QtGui.QWidget):
    def __init__(self, parent=None):
        QtGui.QGroupBox.__init__(self, parent)
        self.gcenter = QtGui.QPushButton("X", self)
        self.gcenter.setAutoRepeat(True)
        guiLayout = QtGui.QGridLayout()
        guiLayout.addWidget(self.gcenter,1,0)
        self.setLayout(guiLayout)
        self.thread = MyThread()
self.connect(self.gcenter, QtCore.SIGNAL("clicked()"), self.thread.start)



if __name__ == "__main__":
        app = QtGui.QApplication(sys.argv)
        gui = Gui()
        gui.show()
        sys.exit(app.exec_())



now i need to stop it when i "release" the button,
tried with :

self.connect(self.gcenter, QtCore.SIGNAL("released()"), self.thread.quit)

but give :

AttributeError: stop

Il giorno 05/apr/09, alle ore 19:56, massimo di stefano ha scritto:


Hi All,

i'm doing my first experience using pyqt and tring to learn more about it
unlucky i'm not able to solve some problems by myself :-(
i googled a lot about and i tried to use QTassistant
....
but i'm pretty new to programming and i've some difficoult to learn.

i tried to resume my problem in a sample script, that is :


import sys
from PyQt4 import QtCore, QtGui
import time

class Gui(QtGui.QWidget):
        def __init__(self, parent=None):
                QtGui.QGroupBox.__init__(self, parent)
                self.gcenter = QtGui.QPushButton("X", self)
                self.gcenter.setAutoRepeat(True)
                self.connect(self.gcenter, 
QtCore.SIGNAL("clicked()"),self.count)
                guiLayout = QtGui.QGridLayout()
                guiLayout.addWidget(self.gcenter,1,0)
                self.setLayout(guiLayout)


        def count(self):
                n = 0
                step = 1
                while True:
                        n += step
                        print n
                        time.sleep(0.5)


if __name__ == "__main__":
        app = QtGui.QApplication(sys.argv)
        gui = Gui()
        gui.show()
        sys.exit(app.exec_())



as you can see the gui do not exit from the "while" statment
and it freeze ...
i know, i need to learn more about QTrhead usage...
an example on how to change the previouse code, will give me a great help!

thanks for help me !!!





Massimo Di Stefano
[email protected]

epifanio on   irc.freenode.net  /join gfoss







Chiacchiera con i tuoi amici in tempo 
reale!http://it.yahoo.com/mail_it/foot/*http://it.messenger.yahoo.com
_______________________________________________
PyQt mailing list    [email protected]
http://www.riverbankcomputing.com/mailman/listinfo/pyqt

Chiacchiera con i tuoi amici in tempo reale! http://it.yahoo.com/mail_it/foot/*http://it.messenger.yahoo.com
_______________________________________________
PyQt mailing list    [email protected]
http://www.riverbankcomputing.com/mailman/listinfo/pyqt

Reply via email to