Qt中资源文件qrc中的路径访问
首先先看一下我们的qrc文件目录结构:
在文件系统中的目录结构是这样的:
请务必注意这边的前缀(按照网友推荐,大部分项目前缀都是只写一个“/”):
接下来进入正题,我们来分别使用函数和qss的方式来访问资源文件qrc:
1.以函数形式访问(以label的背景图片为例)代码如下:
QLabel *lblPicNoUsing = new QLabel(); lblPicNoUsing->setParent(this); QPixmap pixmap(":/image/WhiteCircle.png"); lblPicNoUsing->setPixmap(pixmap);
此时效果为:
2.以qss的方式来访问,代码如下:
for (int i = 0; i < 16; ++i) { QPushButton *pBtn = new QPushButton(); pBtn->setParent(this); pBtn->setFixedSize(30,30); pBtn->setStyleSheet("QPushButton{border-image: url(://image/WhiteCircle.png)}"); pBtn->move((int)(::sin((i * 6.28) / 16.0) * 85)+140,(int)(::cos((i * 6.28) / 16.0) * 85)+140); pBtn->setText(QString::number(i+1)); }
效果如上,就是那16个圆,对比不难发现,其实qss中就是要把正常的路径放在url()里面。其他没什么区别。