社区
Qt
帖子详情
QLabel可以与QWidget一样,作为其它控件的容器吗?
中才德创
2011-03-10 09:58:27
一般是用QWidget作为父的,上面再放几个按钮,几个静态文本。
现在,情况特殊,我想
用QLabel来充当这个父角色,可行吗?
...全文
875
8
打赏
收藏
QLabel可以与QWidget一样,作为其它控件的容器吗?
一般是用QWidget作为父的,上面再放几个按钮,几个静态文本。 现在,情况特殊,我想用QLabel来充当这个父角色,可行吗?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
xuayee
2011-03-12
打赏
举报
回复
肯定可以 QLabel间接继承QWidget 面向对象里的里氏转换原则 一个软件实体如果使用的是一个父类的话,就一定适用于其子类,外界是察觉不出区别的,所以,在软件内可以用任何一个子类替换其父类
dbzhang800
2011-03-12
打赏
举报
回复
[Quote=引用 6 楼 hhxx039 的回复:]
上面的同学不要误导人啊,QLabel可不能做为像Qwidget一样作父控件。
你要把QLabel当父控件,会报错的。
QLabel w;
QPushButton button(w);
QLabel w;
QWidget widget;
widget.setParent(w);
像上面这样的,会提示没有重载函数 error: no mat……
[/Quote]
呵呵,你不觉得,你把QLabel换成QWidget,你会遇到同样的问题么?
大熊哥V5
2011-03-12
打赏
举报
回复
上面的同学不要误导人啊,QLabel可不能做为像Qwidget一样作父控件。
你要把QLabel当父控件,会报错的。
QLabel w;
QPushButton button(w);
QLabel w;
QWidget widget;
widget.setParent(w);
像上面这样的,会提示没有重载函数 error: no matching function for call to 'QPushButton::QPushButton(QLabel&)'
和error: no matching function for call to 'QWidget::setParent(QLabel&)'
大熊哥V5
2011-03-12
打赏
举报
回复
额,是小弟错了,QLabel的确是可以和QWidget一样做父控件。
QLabel w;
QPushButton button(&w);
QLabel w;
QWidget widget;
widget.setParent(&w);
QLabel label(&W);
w.show();
都试过了,是可以正常显示的,和QWidget作父控件是一样的效果。
小弟学艺不精,被高手看出来了,呵呵。
中才德创
2011-03-11
打赏
举报
回复
[Quote=引用 2 楼 dbzhang800 的回复:]
这样用肯定没问题。不过不清楚你这儿的特殊情况是指什么,用它而不是QWidget会给你带来什么便利
[/Quote]
QLabel支持set png图片,相当于提供张背景,在语言切换的,可换。
其它控件就放在此Label上了,当然以其为父。
QLabel,它经常切换显示一些图片,为了简洁,写成了如下:
语言1
m_pLabel->setPixmap(QPixmap(m_strAppPath + IMAGES_FILE_PATH + "lang_1"));
语言2
m_pLabel->setPixmap(QPixmap(m_strAppPath + IMAGES_FILE_PATH + "lang_2"));
语言3
m_pLabel->setPixmap(QPixmap(m_strAppPath + IMAGES_FILE_PATH + "lang_3"));
qter_wd007
2011-03-10
打赏
举报
回复
应可行。不过,QLabel受限制很多。QWidget通常是最好的父窗口类之一。
dext
2011-03-10
打赏
举报
回复
应该可行,毕竟 QLabel的父类 QFrame 继承与 QWidget
dbzhang800
2011-03-10
打赏
举报
回复
[Quote=引用楼主 hawkofwinter 的回复:]
一般是用QWidget作为父的,上面再放几个按钮,几个静态文本。
现在,情况特殊,我想用QLabel来充当这个父角色,可行吗?
[/Quote]
这样用肯定没问题。不过不清楚你这儿的特殊情况是指什么,用它而不是QWidget会给你带来什么便利
Python-
QWidget
QLabel
基本窗口
控件
-主窗口(QMainWindow/
QWidget
/QDialog)和 标签(
QLabel
)的详细介绍
PySide6基本窗口
控件
_主窗口(QMainWindow/
QWidget
/QDialog)和 标签(
QLabel
)的详细介绍,主要讲解了继承相关关系,核心的功能,以及使用场景。
QT点击按钮横向缓缓展开
控件
,label渐变消失和显示
可点击按钮横向缓缓展开
控件
,再次点击缓缓收回
控件
列表。可渐渐隐藏或显示label,有动画效果。label可换成任意
控件
。
QT动态添加
控件
,并且自动布局
QT动态添加
控件
,并且自动布局
qt的一些
控件
qt开发的书籍和一些电子文档
python GUI库图形界面开发之PyQt5窗口布局
控件
QStackedWidget详细使用方法
主要介绍了python GUI库图形界面开发之PyQt5窗口布局
控件
QStackedWidget详细使用方法,需要的朋友可以参考下
Qt
21,466
社区成员
26,689
社区内容
发帖
与我相关
我的任务
Qt
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
复制链接
扫一扫
分享
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章