newellm at blur.com
Thu Mar 6 00:11:13 GMT 2008
On Wednesday 05 March 2008 15:58:26 Jon Chambers wrote:
> I'm trying to write a program that creates an onscreen keyboard that uses
> an 2-analogue stick joypad for input. I'm having issues becuase the
> joystick needs to be polled regularly. I'm using a QTimer to call a
> paintEvent update() that polls the joystick in the main class (Keyboard).
> However there's some other drawing i want to do when the joystick is
> polled. However the drawing is supposed to be done by a different class
> with its own graphics etc (called Ring), and i found the only way that
> seemed to work was to put the drawing i want to do in the paintEvent of
> that class and both seem to get called. But this seems kinda weird, and for
> some reason if i simply called the drawing to be done by Ring as a method
> of the Ring object in the paintEvent of Keyboard it doesn't work.
> I'm sorry if there's a bit confusing, i'm very new to programming and QT
> and also asking questions on mailing lists.
I think the correct thing to do would have a slot connected to the timer that
polls the joystick then calls ring.update(). You should generally avoid
having any code in the paintEvent except for actual painting code. And you
should call paintEvent on the widget that actually needs repainting.
More information about the PyQt