0
点赞
收藏
分享

微信扫一扫

17 QFrame类族

科牛 2022-06-09 阅读 16

QFrame类是具有框架的小部件的基类。
QMenu使用它将菜单“提升”到周围屏幕的上方。QProgressBar有一个“凹陷”的外观。QLabel有一个扁平的外观。可以更改这些小部件的框架。

QLabel label(...);
label.setFrameStyle(QFrame::Panel | QFrame::Raised);
label.setLineWidth(2);

QProgressBar pbar(...);
label.setFrameStyle(QFrame::NoFrame);

QFrame类还可以直接用于创建没有任何内容的简单占位符框架。
框架样式由框架形状和阴影样式指定,阴影样式用于在视觉上将框架与周围的小部件分隔开来。这些属性可以使用setFrameStyle()函数一起设置,并使用frameStyle()读取。
框架形状为NoFrame、Box、Panel、StyledPanel、HLine、VLine;

阴影的风格是朴素的、凸起的和凹陷的。
frame小部件有三个属性来描述边框的厚度:lineWidth、midLineWidth和frameWidth。

  • 线宽是框架边框的宽度。可以修改它来定制框架的外观。
  • 中线宽度指定框架中间额外的一条线的宽度,它使用第三种颜色来获得特殊的3D效果。请注意,中线只绘制为框,HLine和VLine框架是凸起或下沉。
  • 框架宽度由框架样式决定,框架宽度()函数用于获取为所使用的样式定义的值。

框架和框架内容之间的空白可以使用QWidget::setContentsMargins()函数进行定制。
下表显示了一些样式和线宽的组合:

17 QFrame类族_占位符

1 QLabel

QLabel部件用来显示文本或者图片。

显示静态图片:

ui->label->setPixmap(QPixmap("F:/logo.png"));

显示动态图片:

QMovie *movie = new QMovie("F:/donghua.gif");
ui->label->setMovie(movie); // 在标签中添加动画
movie->start();

2 QLCDNumber

可以显示液晶数组一样的效果。

17 QFrame类族_动态图片_02

3 QStackedWidget

可以有多个界面,每个界面都有自己的部件,但一次只能显示一个界面。

4 QToolBox

提供了类似QQ联系人一样的界面。

17 QFrame类族_占位符_0317 QFrame类族_动态图片_0417 QFrame类族_数组_05

 

 


举报

相关推荐

0 条评论