[PyQt] QPainter
Phil Thompson
phil at riverbankcomputing.co.uk
Thu Dec 13 09:28:56 GMT 2007
On Thursday 13 December 2007, lucaberto at libero.it wrote:
> Hello i post the same question of two weeks ago but i never get a reply,
> probably because is a stupid question but pls help me.
>
> i do this code :
> def cornice(self):
> import math
> nome_cal = self.lineEdit.text()
> if nome_cal =='':
> while 2 :
> dlg_line = QtGui.QMessageBox.warning(self,'Pls Attention',
> 'You must insert a name for the calibration', QtGui.QMessageBox.Cancel)
> break
> else :
> self.frame1.setAttribute(QtCore.Qt.WA_PaintOutsidePaintEvent)
> grone = QtGui.QPainter(self.frame1)
> pen = QtGui.QPen()
> pen.setWidth(1)
> #disegno contorno grafico
> grone.setPen(pen)
> grone.drawText(30, 35, '50 daN/mm')
> grone.drawText(395, 30, nome_cal)
> grone.drawText(30, 430, '0')
> grone.drawText(30, 240, '25')
> grone.drawText(816,430, '0')
> grone.drawText(816, 240, '90')
> grone.drawText(806, 35, 'Deg 180')
> grone.drawText(395, 480, 'Frequency Hz')
> grone.drawText(55, 445, '0')
> grone.drawText(796, 445, '120')
> grone.drawLine(60,40,60,430)
> grone.drawLine(60, 40, 801, 40)
> grone.drawLine(801, 40, 801, 430)
> grone.drawLine(60, 430, 801, 430)
> ## some other line##
> grone.end()
> app.processEvents()
>
> as you can see i draw in a frame located in a tab2, my question is why
> when i switch to tab1 and then back to tab2 the frame is clear? And why if
> i minimize the widget the farme is clear again?
> How i can solve this problem.
By doing all your painting from within paintEvent().
Phil
More information about the PyQt
mailing list