QT 给窗口添加图片

Qt  中给窗口或按钮添加背景图片可以采用以下两种方法:

方案一:使用paintEvent

C/C++ code
?
1
### 如何在 Qt 窗口中设置背景图片 #### 使用 `setStyleSheet` 方法 可以通过样式表来设置按钮或其他控件的背景图像。下面是一个简单的例子,展示了如何通过 `QApplication.setStyleSheet` 设置 QPushButton 的背景图像[^1]。 ```cpp #include <QApplication> int main(int argc, char *argv[]) { QApplication app(argc, argv); // 应用全局样式表给所有的 QPushButton 添加背景图 app.setStyleSheet("QPushButton{background-image:url(bg.png);}"); // 创建并显示窗口... } ``` #### 使用 `QWidget::setPalette` 和 `QPixmap` 对于整个窗口或特定部件(widget),可以创建一个 `QPixmap` 对象加载背景图片,并将其应用到调色板中作为背景刷子。这种方式适用于更复杂的场景,比如想要为整个窗体指定背景图案[^2]。 ```cpp #include <QApplication> #include <QMainWindow> int main(int argc, char *argv[]) { QApplication a(argc, argv); // 加载背景图片 QPixmap bkgnd("bg.jpg"); QWidget* widget = new QWidget(); widget->setAutoFillBackground(true); // 自动填充背景 QPalette palette; palette.setBrush(QPalette::Window, bkgnd); // 将背景设为图片 widget->setPalette(palette); QMainWindow* mainWindow = new QMainWindow(); mainWindow->setCentralWidget(widget); mainWindow->resize(800, 600); // 调整大小以便看到效果 mainWindow->show(); return a.exec(); } ``` 这段代码首先设置了窗口的小部件自动填充其背景属性,接着定义了一个新的调色板并将背景画笔设置为我们之前加载好的图片文件 "bg.jpg" ,最后把这个自定义样式的部件放置到了主窗口中央位置[^3]。 另外,在资源文件中也可以预先准备好所需的图片路径,这样可以直接使用相对路径访问这些资源而无需关心实际存储位置[^4]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值