Python QPainter点大小为1像素,无法更改
我试着用一种装束的尺寸来画点,但是换支笔没用。我画的每个点都是一个像素大小。这是我的密码:Python QPainter点大小为1像素,无法更改,python,pyqt,pyqt5,qpainter,Python,Pyqt,Pyqt5,Qpainter,我试着用一种装束的尺寸来画点,但是换支笔没用。我画的每个点都是一个像素大小。这是我的密码: class Diedrico(QWidget): 定义初始化(自身,父级): super()。\uuuu init\uuuu(父级) def paintEvent(自身,事件): painter=QPainter() pen=QPen(Qt.黑色) 笔设置宽度(30) 画师:画笔 画家。开始(自我) 绘制点(10,10) (完) 如果在控制台/CMD中运行脚本,您将收到以下警告: QPainter::se
class Diedrico(QWidget):
定义初始化(自身,父级):
super()。\uuuu init\uuuu(父级)
def paintEvent(自身,事件):
painter=QPainter()
pen=QPen(Qt.黑色)
笔设置宽度(30)
画师:画笔
画家。开始(自我)
绘制点(10,10)
(完)
如果在控制台/CMD中运行脚本,您将收到以下警告:
QPainter::setPen: Painter not active
QPainter::setPen: Painter not active
它清楚地表明您正在修改属性,而QPainter没有设备,因此解决方案是在setPen()之前使用begin()初始化设备,或者在构造函数中传递设备,此外,在这种情况下,end()方法是不必要的,因为当QPainter被销毁时,将调用end()
从PyQt5.QtCore导入Qt
从PyQt5.QtGui导入QPainter、QPen
从PyQt5.QtWidgets导入QApplication,QWidget
Diedrico类(QWidget):
def paintEvent(自身,事件):
油漆工=油漆工(自身)
#或
#painter=QPainter()
#画家。开始(自我)
pen=QPen(Qt.黑色)
笔设置宽度(30)
画师:画笔
绘制点(10,10)
如果名称=“\uuuuu main\uuuuuuuu”:
导入系统
app=QApplication(sys.argv)
w=迪德里科()
w、 show()
sys.exit(app.exec_())