Home >> Python >> PyQt4 Fourth


■PyQt4でのボタン入力

	
	import sys
	from PyQt4.QtCore import *
	from PyQt4.QtGui import *
	
	class ButtonSample(QWidget):
		sizebutton = None
		rotatebutton = None
		size = 10
		angle = 0
		ducky = None
	
		def __init__(self,parent=None):
			QWidget.__init__(self, parent)
	
			self.setWindowTitle( "Button Sample")
			self.resize( 300, 300 )
	
			self.sizebutton = QPushButton( "Expand", self )
			self.sizebutton.setFocusPolicy( Qt.NoFocus )
			self.sizebutton.move( 20, 20 )
			self.connect(self.sizebutton, SIGNAL("clicked()"), self.sizeButtonPressed )
	
			self.rotatebutton = QPushButton( "Rotate", self )
			self.rotatebutton.setFocusPolicy( Qt.NoFocus )
			self.rotatebutton.move( 100, 20 )
			self.connect(self.rotatebutton, SIGNAL("clicked()"), self.rotateButtonPressed )
	
			self.setFocus()
			self.ducky = QImage( "ducky.png")
	
		def paintEvent(self,event):
			paint = QPainter()
			paint.begin(self)
			paint.setPen(Qt.red)
			paint.translate(QPoint( self.size, self.size))
			paint.rotate( self.angle )
			#paint.drawRect( self.size, self.size, self.size, self.size )
			paint.drawImage(QRect(-self.size/2, -self.size/2, self.size, self.size), self.ducky)
			paint.end()
	
		def sizeButtonPressed(self):
			self.size += 10
			self.update()
	
		def rotateButtonPressed(self):
			self.angle += 10
			self.update()
	
	app = QApplication(sys.argv)
	sample = ButtonSample()
	sample.show()
	sys.exit(app.exec_())

PyQt4 Third Python PyQt4 Fifth