
{
QImage *ppm = new QImage(filename)
label = new QLabel()
printf("ppm->width()=%d, ppm->height()=%d\n",ppm->width(), ppm->height())//获取图片的宽度和高度
label->setPixmap(QPixmap::fromImage(*ppm))
this->setWidget(label)
/*设置窗口最大高度和宽度为1024*768*/
this->setMaximumHeight(768)
this->setMaximumWidth(1024)
this->resize(QSize( ppm->width()+5, ppm->height() +5))
return
}
python导入图片的方法:一、直接从源图片中导入(图片位于images文件夹内)self.label1=QLabel(self)
self.label1.setPixmap(QPixmap(r"images/head.jpg"))
layout.addWidget(self.label1)
#或者 layout.addWidget(QLabel(self, pixmap=QPixmap("images/head.jpg")))
二、利用qrc资源导入
1、先写qrc文件
images/head.jpg
images/body.jpg
2、将qrc文件转化成py文件
转化命令为:pyrcc5 res.qrc -o res_rc.py
3、导入res_rc.py:import res_rc
4、layout.addWidget(QLabel(self,pixmap=QPixmap(":/images/head.jpg")))
注意需要添加:/符号作为前缀。
不在窗体的paintEvent里画,在Qlabel的子类里画。扩展QLabel,做一个QLabel的子类,在子类的paintEvent里面做:
1.先调用父类的paintEvent(为了把背景画上)
2.然后再用painter画上一条线。
窗体里用这个子类label。
满意就加点分
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)