
QFrame类是那些可以带有边框的部件的基类。
Qmenu 使用这个东西来使自己看起来位于周围屏幕的上方(”raise”) 。 QProgressBar 有一个 “下沉的” ("sunken") 外观。 QLabel 有一个平坦的 (flat) 外观 。这些东西的边框 都可以改变。
QLabel label(...);
label.setFrameStyle(QFrame::Panel | QFrame::Raised);
label.setLineWidth(2);
QProgressBar pbar(...);
label.setFrameStyle(QFrame::NoFrame);
QFrame类还可以用来直接创建一些简单的占位边框,其中不包含任何内容。
边框的外观是用一个 边框形状 和 阴影类型 属性指定的 ,后者用来从视觉上将边框与周围的部件分开。这 2个属性可以一起用 setFrameStyle ()函数来设置,用 frameStyle ()来读取。
可选的边框形状有 NoFrame 、 Box 、 Panel 、 StyledPanel 、 HLine 和 VLine ;可选的阴影类型有 Plain 、 Raised 和 Sunken 。
一个边框部件使用 3个属性来描述它的边界线的宽度(thickness): lineWidth 、 midLineWidth 和 frameWidth 。
•.线宽(line width)是边框的边界(border)的宽度。可以修改它 ,以改变边框的外观 。
•. 中线宽度 (mid-line width)指定咯在边框中间的一条额外的线的宽度 ,它使用另一种颜色来产生一种特殊的三维效果 。注意 ,只有那些升起 (raised)或下沉(sunken)的 Box 、 HLine 和 VLine 边框才会有中线。
•. 边框宽度 (frame width) 由边框类型(frame style )决定,可以用 frameWidth ()函数来取得为当前使用的类型而定义的值。
边框和边框里的内容之间的间隔 (margin)可使用 QWidget::setContentsMargins ()函数来设置 。
下面的表格显示的是某些类型(styles)和线宽(line widths)的组合所产生的边框的外观 :
HxLauncher: Launch Android applications by voice commands