[PyQt] QTimeLine: same code runs different on XP-64bit vs XP-32bit
    James Polk 
    jpolk5001 at yahoo.com
       
    Fri Nov  4 23:52:25 GMT 2011
    
    
  
Hello,
A while back, wrote some kinda' simple code to simply move/animate QLabels
from left to right, or right to left.  Wrote it on WinXP 64bit and it ran fine.
Went to run it on WinXP 32bit, and it doesn't execute the same, meaning
QLabels end up in wrong position,...close, but off...
Basically, doing a 
#----------------------------------
self.timeline = QtCore.QTimeLine(1000)
self.timeline.setFrameRange(0, 30)
self.connect(self.timeline, QtCore.SIGNAL("frameChanged(int)"), self.A_Function )
self.timeline.start()
    where in "A_Function" something is done like:
def A_Function(self, frame):
    tx = float(self.xtranslate[frame])    # retrieves X-offset value from list
    for j in range(1,10):        # ten QLabels
            cmd = ("rect = QtCore.QRect( self.hpix_%d.geometry() )" % j)
            exec(cmd)
            x = rect.x()
            y = rect.y()
            w = rect.width()
            h = rect.height()
            x = x + tx        
            cmd = ("self.hpix_%d.setGeometry(%d,%d,%d,%d)" % (j,x,y,w,h) )
            exec(cmd)
            self.update()
Later, to try to fix,...I added
    self.timeline.setCurveShape(QtCore.QTimeLine.LinearCurve)
    self.timeline.setUpdateInterval(30)
to code above, but didn't make any difference... 
Again, on XP-64bit,...works *everytime*,...but on XP-32bit,...each run
seems to be offset by a randomly wrong value, meaning one time it'll be
maybe 50 pixels short of target, another time, maybe 30 pixels over...
Any and all thoughts and suggestions are most welcome,
Cheers,
Jim
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.riverbankcomputing.com/pipermail/pyqt/attachments/20111104/e7d38b79/attachment.html>
    
    
More information about the PyQt
mailing list