❶ 怎么为QT中的TextEdit添加背景,或改透明度
设置背景:
方法1,利用QSS,
QTextEdit *textedit=new QTextEdit;
textedit->setstylesheet(tr("QTextEdit{background-image:url(....)}"))
方法2,利用QPalette,
QPalette palette=textedit->palette();
palette.setcolor(QPalette::Background,QColor(....)); //设置颜色
palette.setbrush(QPalette::Background,QBrush(....)); //设置图片
textedit->setpalette(palette);
设置透明:
方法1,setAttribute(Qt::WA_TranslucentBackground, true);
方法2,利用QPalette
palette.setColor(QPalette::Background, QColor(0x00,0xff,0x00,0x00));
❷ qt5中,怎么为主窗体添加背景图片
setStyleSheet("background-image:url(F:/qt_test/qt/seting.JPG)");该路径\为/
❸ Qt 中设置窗体透明度的几种方法
1、设置窗体的背景色 在构造函数里添加代码,需要添加头文件qpalette或qgui QPalette pal = palette(); pal.setColor(QPalette::Background, QColor(0x00,0xff,0x00,0x00)); setPalette(pal); 通过设置窗体的背景色来实现,将背景色设置为全透。 效果:窗口整体透明,但窗口控件不透明,QLabel控件只是字显示,控件背景色透明; 窗体客户区完全透明。 2、使用函数setAttribute(Qt::WA_TranslucentBackground, true); 同样在构造函数中,效果和第一种方法相同。 3、窗口及其上面的控件都半透明: setWindowOpacity(0.7) 这个函数可以分10个等级调整透明度,配合QSlider控件可以做成控制条 效果:窗口及控件都半透明。 4.窗口整体不透明,局部透明: 在Paint事件中使用Clear模式绘图。 void TestWindow::paintEvent( QPaintEvent* ){QPainter p(this); p.fillRect( 10, 10, 300, 300, Qt::SolidPattern );}试验效果:绘制区域全透明。
❹ QT怎么给控件设置背景图片
1 MLCNWidget *w=new MLCNWidget;
w->setAutoFillBackground(true);
QPalette palette;
palette.setBrush(w->backgroundRole(), QBrush(QPixmap("./pic/new_images/bg.jpg")));
w->setPalette(palette);
w->showFullScreen();
2 使用QSS
控件->setStyleSheet("background-image:url(./pic/new_images/start_jiankong.png)");
这样做的一个缺点是一旦在一个控件中使用StyleSheet了,其中的子控件就全部会继承,也就是在上面显示主控件的背景了。在网上看到可以通过*{}的方式防止继承,但我试了下,没成功,不知道到底行不行。
3 关于label上加图片的
估计除了widget,加的最多的就是QButton和QLabel了,QLabel里面看QT文档可以发现有个槽,setPixmap,用了下,特别好用。
ui.label_5->setPixmap(QPixmap("./pic/new_images/start_jiankong.png"));
❺ 怎样给QT窗体添加背景,还有按钮怎么添加图片
先添加一个资源文件,然后在你代码的文件夹下面放一张你要添加的背景图片,将其添加到资源文件中,将根目录设置为:/,然后执行代码:
QIcon images= new QIcon(“:/1.png”);
QPushButton *button = new QButton(QIcon(images));
❻ 我想实现在Qt上按钮上添加背景图片不知怎样实现,
看了你的问题,再看了后面的回答,我震惊了,这两者真的有联系?PushButton有个属性叫styleSheet,你可以按以下步骤:
1、点开项目中的以 .ui 结尾的界面编辑文件
2、选中要添加背景图片的按钮
3、在按钮的属性栏里面找到styleSheet属性,它右边有个省略号按钮,点击会出现一个编辑样式表窗口,可以添加资源,添加渐变之类的,添加背景图片的话就选择添加资源(首先按下“添加资源”右边的小三角,弹出三个选项:background-image、border-image、image),从字面意思都可以看出来背景按钮是第一个选项,点击background-image,弹出“选择资源”窗口,你就可以从已经添加到项目中的资源文件中选择图片了,添加资源文件的步骤这儿我就不说了,网上有,回答这个问题不是为了得分什么的,虽然离现在已经过了那么久,真的是看不下去
❼ 怎样使QT的Label控件背景透明
/*设置样式表*/
QLabel*label=newQLabel();
label->setStyleSheet("QLabel{background-color:transparent;}");
❽ qtcreator如何在stylesheet中设置图片
qtcreator如何在stylesheet中设置图片
项目建立完成后:
右键点你的项目 “Add New”->"QT Resource file" 生成一个qrc文件
然后双击它 点add 然后Add Prefix 再Add file 完事之后build一下
在你的ui上点右键 ->Change StyleSheet ->add Resource ->backgroud-image 顺着往下点就能看见你在qrc里添加的那张图片了
摘要:
QT Create中,对button或者window等部件设置背景、颜色、透明等样式时,需要用到style sheet,可以直接在代码里写,也可以在ui设计师里通过右键change style sheet的方法来设置,本人是使用的后面的方式,下面介绍几种常见的用法。
介绍:
作者使用的开发环境为:qt creator 201005, qt4.7。
1、利用style sheet给窗体设置背景
使用stylesheet设置背景图片还是有一些要注意的,如果是在mainwindow和dialog中,直接右键change style sheet在add resource中选择background-image或者border-image,选择资源文件中的图片就行了(前者是按像素显示图片,后者可根据窗体大小来自动缩放图片),如下图:
但在widget中就不行,你会发现,用同样的方法,背景并没有发生改变,而仅仅是它的子窗体背景图片发生了改变。
那么在widget中要如何做呢,我们在widget中放置一个frame,然后对frame通过stylesheet设置背景,后面窗体里所有的部件都放在这个frame里。
我们知道,子窗体会继承父窗体的属性,也就是说,父窗体的背景,在子窗体中也会有,那如何让子窗体不继承父窗体的背景呢,同样的,还是在Edit Style Sheet里,需下输入如下代码:
#desktop {
border-image: url(:/images/desktop.jpg);
}
#desktop * {
border-image:url();
}
desktop是你的窗体名。
2、menubar设置透明
我想做一个菜单按钮,像ubuntu的应用程序菜单一样,能在点击时弹出一个下拉框,我选择了用mainwindow来实现,但我如现menuba显示在顶层很难看,如何才能不让它显示呢。
设置menuba的stylesheet,
background-color:transparent
将背景设置为透明。
3、tool button不显示边框
当我们设置button的icon时,发现icon的形状并不与button完全一致,如下图:
设置stylesheet
border-style: flat;
效果如下:
注意,一定要选择tool button,而不要选择push button,因为push button活动的时候会有一个虚线框。
要达到上图的效果,除了设置border-style:flat,可不可以将style设置为transparent呢?设置成transparent后,显示上看,效果是和上图的一样,但当按下时,button没有被图片覆盖的地方就会显示被按下时的颜色。
4、在父窗体的stylesheet中设置子部件的属性
假设有多个button,且它们的样式是一样的,那是不是需要一个个设置呢?不需要的,我们可以在父窗体中进行设置,那么子部件都会继承它的属性。
如果某个button的样式特殊,再单独修改就行了,下面举个实例,在父窗体的stylesheet中设置如下
QDialog{background:rgb(229, 255, 239)}
QMenuBar{background:url(:/image/header.bmp)}
QStatusBar{background:url(:/image/header.bmp)}
QPushButton{background:url(:/image/header.bmp)}
QLCDNumber{background:url(:/image/lcd.bmp)}
QLabel{color: rgb(0, 0, 255)}
QDial{background-color: rgb(67, 67, 67)}
QGroupBox {
border-width:2px;
border-style:solid;
border-color:#FFFFFF;
}
QGroupBox{color: rgb(255,255, 255)}
QToolButton{border-style: flat;}
❾ Qt 中怎么设置框架中的文本框的透明度
ui->lineEdit->setStyleSheet("background-color:rgba(0,0,0,0);");//ui->lineEdit替换成你想要变透明的
❿ 如何设置QPushButton背景透明样式如QLabel
QT中使用setStyleSheet()设置空间的样式表是很常用也很方便的方式。使用方法如下
工具/原料
QT开发工具
方法/步骤
首先要定义一个QPushButton对象
QPushButton button = new QPushButton();
设置button的字体类型、字体大小和字体颜色代码如下:
button->setStyleSheet"QPushButton{ font-family:'Microsoft YaHei';font-size:12px;color:#666666;}");
设置button的状态图片:正常、鼠标移入、鼠标点击状态的图片切换。代码如下:
button->setStyleSheet( "QPushButton{border-image: url(Resources/images/BreadCrumbNavigation/navigation_more_normal.png);}" "QPushButton:hover{border-image: url(Resources/images/BreadCrumbNavigation/navigation_more_hover.png);}" "QPushButton:pressed{border-image: url(Resources/images/BreadCrumbNavigation/navigation_more_pressed.png);}");
也可以同时设置这两种属性:
button->setStyleSheet( "QPushButton{font-family:'Microsoft YaHei';font-size:12px;color:#666666;}”
border-image: url(Resources/images/BreadCrumbNavigation/navigation_more_normal.png);}" "QPushButton:hover{border-image: url(Resources/images/BreadCrumbNavigation/navigation_more_hover.png);}" "QPushButton:pressed{border-image: url(Resources/images/BreadCrumbNavigation/navigation_more_pressed.png);}");