在Qt中给widget添加背景图片,图片空白处显示为黑色
QPixmap pixmap("picture/love.png");

QPalette palette;
palette.setBrush(QPalette::Window, QBrush(pixmap.scaled(size(), Qt::IgnoreAspectRatio,
                                                        Qt::SmoothTransformation)));

this->setPalette(palette);

setAutoFillBackground(true);
0

2个回答

可以截个图看一下是什么样吗

0
qq_28107929
不死奇迹 就是如果一直nag照片只有彩色部分显示出来,其它部分全为黑色。之前有人说可以用setMask(),可是我的类虽然继承自QWidget,但是编译器报错,提示这个函数不是它的函数
3 年多之前 回复
0
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
Qt 如何给Widget设置背景图片
Qt 设置背景图片
Qt: 给Widget设置背景图片
Qt: 给Widget设置背景图片 结合网上多篇资料整理如下,给自己和别人一个参考 方法一:1.在要换背景的类的构造函数中装载一个图片,变量要为全局的,接下来会用到    _image.load("image/image_background");    setAutoFillBackground(true);   // 这个属性一定要设置    QPalette pal(pa
Qt中设置窗体背景图片后竟变黑
我们知道,qt中默认的窗体背景背景色是白色的,于是,为了美观或者说体验更好的视觉效果,我们可以更还其背景色,qt中也提供了一系列的函数来让我们对其进行设置,具体设置方法可以参见博客:http://blog.sina.com.cn/s/blog_a6fb6cc90101f9ec.html#cmt_2376162 但是,在我自己动手设置的过程中发现,我设置后窗体背景色竟是黑色的,不是我所要加载的图片,
QWidget设置窗口背景图片的几种方法
全文链接:http://www.fearlazy.com/index.php/post/112.html 软件的界面为了更直观或美观,常常需要通过图片来表达。我们知道Qt中所有界面类的祖先是QWidget,因此学会给QWidget设置图片是必须掌握的技能之一。但是编程是没有标准答案的,达到同一效果可以有许多不同的方法。那么给窗口设置背景图片又有多少种方法呢?接下来通过写个测试例子看看。    ...
QT 给WIdget设置 背景图片和背景颜色
http://blog.sina.com.cn/s/blog_6e01112f0102vcfl.html 1).如果widget是顶层窗口(无父类的窗口) 设置背景图片:    QImage _image;   _image.load("./videoarea.png");   setAutoFillBackground(true);   // 这个属性一定要设置    QPa
Qt crearor中添加背景图片的问题
在对话框中添加背景图片的一种方法: 右键点击窗体区域-->change styleSheets--> 在弹出的edit Style Sheet对话框中选择Add resources中的backgroud-image -->在select resources中选择自己想要的资源图片-->确定 但这做法有一个问题,就是窗体中的部件,如按钮和输入框等也全部添加了背景。 而且按钮的形状也被改...
[Qt笔记]:QWidget设置背景图片
QWidget设置背景图片
Qt5.9中设置主窗口QWidget边界图片(背景图片)(子控件不受影响)
本文主要总结在QWidget中设置窗口边界图片,而QWidget上的窗口控件以及子窗口不受影响。 1.1主要是用到函数setObjectName()和函数setStyleSheet(),具体的用法如下所示。 QWidget mainWidget = new QWidget; mainWidget->setObjectName("mainWidget"); mai...
Qt中设置widget背景颜色背景图片的注意事项
Qt中设置widget背景颜色背景图片的注意事项 在Qt中设置widget背景颜色或者图片方法很多种:重写paintEvent() , 调色板QPalette , 样式表setStyleSheet等等。       但是各种方法都有其注意事项,如果不注意则很容易陷入麻烦中。[喝小酒的网摘]http://blog.const.net.cn/a/8333.htm 1:
Qt creator第一个Qt5小程序:显示带背景颜色或图片的QWidget的Hello World窗口
用“qt-opensource-linux-x64-5.3.0.run”版本,安装完之后已经集成了QtCreator,在Tools目录下。这里用QtCreator作为IDE,创建,编译一个最简单的Qt5小程序。
QWidget 设置背景透明如何显示背景图片
1、QPainter  在paintEvent 中重绘       1) SerialDialog::SerialDialog(QWidget *parent) :     QDialog(parent),     ui(new Ui::SerialDialog) {     ui->setupUi(this);     this->setWindowFlags(Qt::Frame...
QT5.2 + VS2012 给QWidget 对象使用setStyleSheet()设置背景图片运行不显示的问题
            使用stylesheet设置背景图片,如果是在mainwindow和dialog中,直接右键change style sheet在add resource中选择background-image或者border-image,选择资源文件中的图片就行了。             但在widget中,使用stylesheet(),在qt designer虽然显示有图片。没设置wi...
Qt设置窗口背景图片
setAutoFillBackground(true); QPalette pal = this->palette(); // pal.setColor(QPalette::Background, QColor(19, 54, 118)); pal.setBrush(backgroundRole(), QPixmap("/nfsshare/home-backgroun...
QWidget设置图片为背景
最近学习Qt略有心得,记之以备不虞。我们常常有这种需求,就是需要给某个指定的QWidget对象添加图片背景。比方中国象棋,整个棋盘周边是状态区,而中间的棋盘可以是一个图片,所以如何给这个QWidget对象添加背景图片呢?如下解决方法://demo.h #include class MainWindow : public QMainWindow { Q_OBJECT private: ...
Qt利用setstylesheet给控件设置背景图片不能显示
有个问题一直困扰我好久,就是用setstylesheet给控件设置背景图片的时候,找来找去运行程序的时候设置的背景图片就是不显示。 现在总结一下自己发现的一些问题,以及使用setstyle
widget背景图片自适应大小
1 说明widget要想使背景图片拉伸自适应大小,setsheetstyle的时候应该使用border-image,而不是background-image,如果使用的background-image那么图片会以填充的方式自适应大小 2 QLabel 的pixmap自适应大小 setScaledContents(true);
QTabWidget设置图片
ui->tabWidget->setStyleSheet("QTabWidget::pane{border-width:5px;border-color:rgb(48, 104, 151);\ border-style: outset;background-color: rgb(132, 171, 208);\
Qt基类Qwidget,用setstylesheet设置背景图片,运行不能显示
// 1、如果你是用QWidget做的主窗体,请需要重构paintEvent事件 添加如下代码 h文件添加: #include <QPainter>protected:     void paintEvent(QPaintEvent *event); cpp文件添加:   void QWidget::paintEvent(QPaintEvent *)   {       ...
QT Creator添加QPixmap为背景,显示为黑色
资源中的image.qrc为: 代码中的路径设置如下: QPixmap pixmap(QString::fromUtf8(":/file/images/8.jpg"));//当前文件夹下面的图片 QPalette palette = this->palette(); palette.setBrush(backgroundRole(), QBrush(pixm
向QWidget中添加图片,并使图片随窗体大小缩放
向QWidget中添加图片有多种方式,其中一种方法如下:// 部分核心代码片段 在Qt 5.7中编译通过 QWidget * widget = new QWidget; widget->setAtuoFillBackground(true); QImage image; QPalette palette; image.load("picture_path/name.png"); // 指定图片所在位
Qt给窗口背景绘制图片背景
//重载窗口绘制事件 void paintEvent(QPaintEvent *);//在事件中实现void MainWindow::paintEvent(QPaintEvent *){ QPainter painter(this); QBrush brush; brush.setTextureImage(QImage("E:\\FLC\\QtTest\\QSerialPortT...
[Qt]QWidget设置背景实际却没有效果的问题
使用QSS设置了QWidget的样式,实际运行时却完全无效。甚至在Designer中设置该StyleSheet后都能预览到预想中的效果,然而实际运行却没有效果。 经过网上搜索得到如下解决办法,在该QWidget的子类中重新实现paintEvent这个protected成员函数: void MyWidget::paintEvent(QPaintEvent *event) {   
qt无法显示背景图片
参考http://www.cnblogs.com/liu_xf/archive/2011/06/28/2092565.html这篇文章上的内容,近日利用style sheet给窗体设置背景图片,可是无论是.jpg格式、png格式还是bmp格式的图片,都无法显示。 经过半天时间的排查,发现是因为我在用Photoshop处理图片之后保存时存储的格式不对,虽然我存储的文件名是.jpg或.png或.
自定义背景图片的QT对话框
通过setStyleSheet设置QSS样式表生成一个如图所示的对话框。把该踩得地雷都踩了一遍,就把过程写在这里。  1首先,编辑qrc文件。添加一个前缀“/”,并在这个前缀后面添加要使用的图片   2,重写widget子类的paintEvent()函数。 在类的定义中添加   void paintEvent(QPaintEvent *event);  并且自己重写这个函数   ...
用Qt Designer 给对话框控件添加背景图片和颜色或者插入图片
一、将图片资源添加进QtDesigner: 1、用XML格式写一个类似这样的.qrc文件,将图片相对路径添加进去:    images/config.png    images/query.png    images/update.png 2、单击Designer右下方的ResourceBrowser菜单中的铅笔:   3、单击蓝色open按钮,添
Qt PaintEvent 绘制窗体背景图片
paintEvent 改变窗体背景图片: QPixmap m_pBg; m_pBg.load("Demo_bg.png"); void CDemoWnd::paintEvent(QPaintEvent* pEvent) { QPainter painter; painter.begin(this); painter.drawPixmap(rect(),m_pBg); painter.en
QT 给窗口添加图片
Qt  中给窗口或按钮添加背景图片可以采用以下两种方法: 方案一:使用paintEvent C/C++ code ? 1 2 3 4 5 void Widget::paintEvent(QPaintEvent *e) {     QPainter painter(this);     p
QT界面,按钮,Label背景图片设置方法
QT,背景图片
如何通过QT Creator创建菜单,添加图标和背景图片
一. 首先创建一个 project. New->QT4 Gui Application. 创建完毕后,点击 XXX.ui ,开始添加菜单:双击左上角的 ”Type Here” 进行编辑,编辑完后回车(回车很重要),回车后就会出现下拉菜单,继续类似编辑。 Ok, 菜单编辑完成了,界面的 Action Editor 就会有你添加的内容 , 如下 . ...
Qt添加界面文件的背景图片
在Qt界面文件右键单击“改变样式表”:选择border-image: 输入:QWidget#Widget{border-image: url(:/login.png)}; 注:QWidget:界面文件继承的类; Widget:界面文件的对象名; login.png:背景图片(正确填写背景图片在资源文件中的路径);
qt实现子窗口继承父窗口背景图片
qt美化窗口界面时,需要使用背景图片,设计给了个1像素宽的图片背景色图片,需要实现自己拉伸,本身不太熟就记录一下,要使qt界面可以自适应或最大化需要拉伸这个破玩意 考虑,直接使用在qt 设计器的stylesheet中加入背景图片,可理想很丰满显示很骨感,运行一下效果发现跟想象的不一样,可以自己联想一下,奏不贴图了,如果实在想知道只有自己亲自验证了,考虑半天,搜索了半天终于实验成功,原来必须在主窗
Qt--添加控件背景图片的三种常用方法
1.使用QIcon类。代码如下: QIcon icon; icon.addFile(tr("res/icon/wall.png")); ui->toolButton->setIcon(icon);1232.使用QPixmap和QBitmap类。代码如下: QPixmap icon1(tr("res/icon/wall.png")); ui->toolButton->s...
QWidget中加载QML时设置背景为透明
使用QQuickWidget,设置如下: quick_widget->setAttribute(Qt::WA_AlwaysStackOnTop); quick_widget->setClearColor(QColor(Qt::transparent));
Qt添加背景图片而不影响其控件的不用代码的设置方法
说明: Qt版本:5.9.1 效果图: 一、我们选中MainWindow,右击选择改变样式表,添加背景图片后,是这样的: 二、可见,控件收到了影响,那么我们将样式表中的格式稍加修改: 三、按F5运行程序就可以看到控件不会受到影响了。
QT 对话框添加背景图片的方法
1. QPalette的方法#include #include int main(int argc, char *argv[]){    QApplication app(argc,argv);    QFrame *frame = new QFrame;    frame->resize(400,700);    QPixmap pixmap("images/frame.png");    QPalette   palette;    palette.setBrush(frame->backgroundR
QT界面设置背景图片
在QT下设置背景图片,查了好多方法,这个最好用: .如果widget是顶层窗口(无父类的窗口) 设置背景图片:    QImage _image;   _image.load("./videoarea.png");   setAutoFillBackground(true);   // 这个属性一定要设置    QPalette pal(palette());     p
QT实现背景图片多种填充方式:居中、平铺、缩放、拉伸
        最近用QT开发一个软件,遇到一些问题在网上找不到完善的解决方案,自己做了一些尝试后最后找到符合自己需要的,还有对一些问题的理解,在此做一些记录。不一定是很有效率的通用解决方案,希望遇到相关问题的可以在这里找到一些思路。         先记录下刚刚做完的窗口背景设置,我需要的是:在没有选择图片的时候,显示背景颜色,而在有图片的时候显示图片,并且图片要可以选择:“居中”、”平铺”、...
Qt中实现图片透明度设置与显示
在使用QGraphicsScene过程中,想要实现背景和前景图层叠加显示,需要设置对应层绘图的透明度的设置。采用重写drawBackground(QPainter *painter, const QRectF &rect)和drawForeground(QPainter *painter, const QRectF &rect)事件实现。类似的,QPainter的setOpacity()方法可以在
Qt使用动态图当背景图片,上边放置各种控件
我们一直使用QT制作应用,一般都用图片,或者纯色当做背景,那如何使用动态图当背景呢?
Qt背景不显示问题
背景不显示的只有主窗口会发生,原因是主窗口使用的QWidget类 解决办法 重构paintEvent事件,添加即可 void LoginWidget::paintEvent(QPaintEvent *event) { QStyleOption opt; opt.init(this); QPainter p(this); style()->draw...
文章热词 机器学习教程 Objective-C培训 交互设计视频教程 颜色模型 设计制作学习
相关热词 mysql关联查询两次本表 native底部 react extjs glyph 图标 qt物联网教程 qt教程python