Qt界面一个简单模糊的问题

unixpkwindows 2011-08-30 03:53:04
我建了Dialog继承类,上面布局都好了,可是给整体背景加个图片或颜色,发现Dialog下没有样式表那些函数,我用的ui简单设计的,想自作聪明弄个大的label整体围起来,反正继承于QLabel吗可以用样式表的,哪知覆盖了我上面的其他label,除了按钮没有覆盖,源码如下:
Dialog::Dialog(QWidget *parent) :
QDialog(parent),
ui(new Ui::Dialog)
{
ui->setupUi(this);
this->resize(400,300);
this->setWindowTitle("do it like a dude");
Dialog->setStyleSheet("background-image:url(:/images/qi.jpg)"); //QDialog类下不可以set样式表吗?还有我这样写肯定错了@#¥%!
ui->pushButton->setStyleSheet("background-image:url(:/images/dl2.jpg)");
}

望哪位熟手帮忙下!
...全文
454 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
念茜 2011-08-30
  • 打赏
  • 举报
回复
SetStyleSheet("background-image:url(:/images/qi.jpg)"); 可以

初学者可以使用qt-creator,在UI中右键点击控件,然后直接选更改样式表 change StyleSheet ,在里面有样例可以选择,看看人家写的,就会了。
刀刀亮 2011-08-30
  • 打赏
  • 举报
回复
额……个人建议,如果你还没搞定,那就把外面的那个最大的布局变形成widget,在对widget进行样式表的操作,ui->widget->SetStyleSheet("background-image:url(:/images/qi.jpg)");这种方法虽然笨了点,可是很管用,呵呵
unixpkwindows 2011-08-30
  • 打赏
  • 举报
回复

Dialog::Dialog(QWidget *parent) :
QDialog(parent),
ui(new Ui::Dialog)
{
ui->setupUi(this);
this->resize(400,300);
this->setWindowTitle("do it like a dude");
QPushButton { color: red }; 这一行这样写是不是格式有问题啊,提示还是有错滴,少了什么符号吗
dbzhang800 2011-08-30
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 unixpkwindows 的回复:]

引用 3 楼 dbzhang800 的回复:

这不是Qt(注意拼写)的问题,是C++的问题,注意this指针



我直接用this->setStyleSheet(。。。。)可是ui中其他label和lineEdit呗覆盖了,看不到了,请问是怎么回事,只有按钮还在 和原来一样
[/Quote]
这是另一个问题了,先熟悉一下qss或css的语法吧。

重点:css/qss 选择器的使用
unixpkwindows 2011-08-30
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 dbzhang800 的回复:]

这不是Qt(注意拼写)的问题,是C++的问题,注意this指针
[/Quote]


我直接用this->setStyleSheet(。。。。)可是ui中其他label和lineEdit呗覆盖了,看不到了,请问是怎么回事,只有按钮还在 和原来一样
dbzhang800 2011-08-30
  • 打赏
  • 举报
回复
这不是Qt(注意拼写)的问题,是C++的问题,注意this指针
unixpkwindows 2011-08-30
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 dbzhang800 的回复:]

QDialog 显然可以setStyleSheet

但你这样乱写 Dialog->setStyleSheet(...) 就不对了 ^_^

先好好熟悉C++的语法再说吧。
[/Quote]

那大虾大约说下该怎么写啊,ui->Dialog->setStyleSheet吗,这个问题怎样解决呢,我不是做QT的,是我安防中的界面方面,但是想弄下。
dbzhang800 2011-08-30
  • 打赏
  • 举报
回复
QDialog 显然可以setStyleSheet

但你这样乱写 Dialog->setStyleSheet(...) 就不对了 ^_^

先好好熟悉C++的语法再说吧。

16,240

社区成员

发帖
与我相关
我的任务
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
  • Qt
  • 亭台六七座
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧