QFrame类Word文件下载.docx
- 文档编号:18710805
- 上传时间:2022-12-31
- 格式:DOCX
- 页数:9
- 大小:25.40KB
QFrame类Word文件下载.docx
《QFrame类Word文件下载.docx》由会员分享,可在线阅读,更多相关《QFrame类Word文件下载.docx(9页珍藏版)》请在冰豆网上搜索。
∙Shape
frameShape
∙void
setFrameShape
(Shape)
∙Shadow
frameShadow
setFrameShadow
(Shadow)
lineWidth
setLineWidth
(int)
margin
setMargin
midLineWidth
setMidLineWidth
frameRect
setFrameRect
(constQRect&
)
属性
-框架内的矩形
(只读)
-框架矩形
-来自框架风格的框架阴影值
-来自框架风格的框架外形值
-被绘制的框架的宽度
-线宽
-边白的宽度
-中间的线的宽度
保护成员
paintEvent
(QPaintEvent
event)
resizeEvent
(QResizeEvent
e)
drawFrame
(QPainter
p)
drawContents
(QPainter*)
frameChanged
()
详细描述
它绘制框架并且调用一个虚函数drawContents()来填充这个框架。
这个函数是被子类重新实现的。
这里至少还有两个有用的函数:
drawFrame()和frameChanged()。
QPopupMenu使用这个来把菜单“升高”,高于周围屏幕。
QProgressBar有“凹陷”的外观。
QLabel有平坦的外观。
这些有框架的窗口部件可以被改变。
QLabellabel(...);
label.setFrameStyle(QFrame:
:
Panel|QFrame:
Raised);
label.setLineWidth
(2);
QProgressBarpbar(...);
NoFrame);
QFrame类也能够直接被用来创建没有任何内容的简单框架,尽管通常情况下,你要用到QHBox或QVBox,因为它们可以自动的布置你放到框架中的窗口部件。
框架窗口部件有四个属性:
frameStyle()、lineWidth()、midLineWidth()和margin()。
框架风格由框架外形和阴影风格决定。
框架外形有NoFrame、Box、Panel、StyledPanel、PopupPanel、WinPanel、ToolBarPanel、MenuBarPanel、HLine和VLine,阴影风格有Plain、Raised和Sunken。
线宽就是框架边界的宽度。
中间线宽指定的是在框架中间的另外一条线的宽度,它使用第三种颜色来得到一个三维的效果。
注意中间线只有在Box、HLine和VLine这些凸起和凹陷的框架中才被绘制。
边白就是框架和框架内容之间的间隙。
这个表显示的是风格和宽度的绝大多数有用的组合(和一些没有用处的):
也可以参考抽象窗口部件类。
成员类型文档
QFrame:
Shadow
这个枚举类型定义了QFrame的框架所使用的三维效果。
当前定义的效果有:
∙QFrame:
Plain
-框架和内容看来和周围一样高
Raised
-框架和内容看起来凸起
Sunken
-框架和内容看起来凹陷
MShadow
-内部的,对于阴影的掩码
Shadow和QFrame:
Shape、lineWidth()和midLineWidth()相互作用。
类文档中的框架的图片描绘的比这些词语更好。
也可以参考QFrame:
Shape、lineWidth和midLineWidth。
Shape
这个枚举类型定义了QFrame的框架所使用的外形。
∙NoFrame-QFrame不画任何东西
∙Box-QFrame在它的内容周围画一个框
∙Panel-QFrame画一个平板使内容看起来凸起或者凹陷
∙WinPanel-像Panel,但QFrame绘制三维效果的方式和MicrosoftWindows95(及其它)的一样
∙ToolBarPanel-QFrame调用QStyle:
drawToolBarPanel()
∙MenuBarPanel-QFrame调用QStyle:
drawMenuBarPanel()
∙HLine-QFrame绘制一个水平线,但没有框任何东西(作为分隔是有用的)
∙VLine-QFrame绘制一个竖直线,但没有框任何东西(作为分隔是有用的)
∙StyledPanel-QFrame调用QStyle:
drawPanel()
∙PopupPanel-QFrame调用QStyle:
drawPopupPanel()
当它不调用QStyle时,Shape和QFrame:
Shadow、lineWidth()和midLineWidth()相互作用来创建整个结果。
Shadow、QFrame:
style()和QStyle:
drawPrimitive()。
成员函数文档
QFrame(
QWidget
构造一个框架风格为NoFrame并且1像素框架宽度的框架窗口部件。
parent、name和f参数被传递给QWidget的构造函数。
QRect
contentsRect()const
返回框架内的矩形。
详细情况请参考“contentsRect”属性。
void
drawContents(
QPainter
*)
[虚保护]
绘制框架内容的虚函数。
当你得到QPainter时,它已经被打开,并且在你离开时,它也必须是打开的。
绘制工具的转换在真个过程中是被关闭的。
如果你转换绘制工具,记得考虑框架并且在返回前重置转换。
这个函数在子类中被重新实现用来绘制框架中的一些东西。
它只能在contentsRect()内绘制。
默认函数什么都不做。
也可以参考contentsRect和QPainter:
setClipRect()。
在QLabel、ahref="
qlcdnumber.html#drawContents"
>
QLCDNumber、QMenuBar和QPopupMenu中重新实现。
drawFrame(
p)
使用绘制工具p和当前框架属性和颜色组绘制框架。
框架内的矩形不受影响。
这个函数是虚函数,但通常情况下你不需要重新实现它。
如果你要做,注意QPainter已经被打开并且必须保持打开的状态。
也可以参考frameRect、contentsRect、drawContents()、ahref="
#frameStyle"
frameStyle()和palette。
frameChanged()
当框架风格、线宽和中间线宽发生改变时,这个虚函数被调用。
这个函数在子类中可以被重新实现,它需要知道什么时候框架属性发生变化。
默认实现是调用update()。
frameRect()const
返回框架矩形。
详细情况请参考“frameRect”属性。
frameShadow()const
返回来自框架风格的框架阴影值。
详细情况请参考“frameShadow”属性。
frameShape()const
返回来自框架风格的框架外形值。
详细情况请参考“frameShape”属性。
int
frameStyle()const
返回框架风格。
默认值是QFrame:
NoFrame。
也可以参考setFrameStyle()、frameShape和frameShadow。
实例:
scrollview/scrollview.cpp。
frameWidth()const
返回所绘制的框架的宽度。
详细情况请参考“frameWidth”属性。
lineWidth()const
返回线宽。
详细情况请参考“lineWidth”属性。
margin()const
返回边白的宽度。
详细情况请参考“margin”属性。
midLineWidth()const
返回中间线的宽度。
详细情况请参考“midLineWidth”属性。
paintEvent(
QPaintEvent
event)
处理绘制事件event。
绘制框架和内容。
打开框架上的绘制工具并且调用drawFrame(),然后是drawContents()。
life/life.cpp和qfd/fontdisplayer.cpp。
从QWidget中重新实现的。
在ahref="
qttableview.html#paintEvent"
QtTableView中被重新实现。
resizeEvent(
QResizeEvent
e)
处理重定义大小事件e。
对于被重新定义大小的窗口部件,调整框架矩形。
框架矩形是弹性的,并且周围的区域是固定的。
结果框架矩形也许是零或者无效。
你可以使用setMinimumSize()来避免这种可能。
如果框架矩形已经是一个零矩形,那么将不会做任何事。
life/life.cpp。
setFrameRect(const
&
)
[虚]
设置框架矩形。
setFrameShadow(
)
设置来自框架风格的框架阴影值。
setFrameShape(
设置来自框架风格的框架外形值。
setFrameStyle(int
style)
设置框架风格为style。
style是框架外形和框架阴影风格的位或操作。
详细情况请参考类文档中的框架的图片。
框架外形有:
∙NoFrame不绘制任何东西。
自然地,如果你使用这个,你就不用指定阴影风格。
∙Box绘制矩形框。
内容看起来和周围的屏幕一样高,但是边界本身也许凸起或凹陷。
∙Panel绘制矩形凸起或凹陷的平板。
∙StyledPanel绘制一个依赖于当前GUI风格的矩形平板。
它可能是凸起的,也可能是凹陷的。
∙PopupPanel是用来绘制用于弹出窗口的框架。
它的外观也依赖于当前GUI风格,通常和StyledPanel一样。
∙ToolBarPanel是用来绘制用于工具条的框架。
它的外观也依赖于当前GUI风格。
∙MenuBarPanel是用来绘制用于菜单条的框架。
∙LineEditPanel是用来绘制用于行编辑的框架。
∙TabWidgetPanel是用来绘制用于Tab窗口部件的框架。
∙WinPanel绘制一个和Windows95中一样的凸起或凹陷的矩形平板。
指定这个外形设置线宽为2像素。
WinPanel的提供是为了兼容性。
为了使GUI风格独立,我们建议使用StyledPanel替换它。
∙HLine绘制一条水平线(垂直中央)。
∙VLine绘制一条垂直线(水平中央)。
阴影风格有:
∙Plain使用调色板的前景颜色绘制(没有任何三维效果)。
∙Raised使用当前颜色组的亮和暗颜色绘制三维的凸起线。
∙Sunken使用当前颜色组的亮和暗颜色绘制三维的凹陷线。
如果被指定的中间线宽大于0,在Raised或Sunken、Box÷
HLine和VLine框架中会被绘制一条另外的线。
当前颜色组的中间颜色被用于绘制中间线。
也可以参考Illustration、frameStyle()、colorGroup和QColorGroup。
cursor/cursor.cpp、layout/layout.cpp、listboxcombo/listboxcombo.cpp、rangecontrols/rangecontrols.cpp、scrollview/scrollview.cpp、tabdialog/tabdialog.cpp和tictac/tictac.cpp。
setLineWidth(int)
设置线宽。
setMargin(int)
设置边白的宽度。
setMidLineWidth(int)
设置中间线的宽度。
属性文档
contentsRect
这个属性保存的是框架内的矩形。
使用contentsRect()来得到这个属性值。
也可以参考frameRect和drawContents()。
frameRect
这个属性保存的是框架矩形。
框架矩形是被画的框架所在的矩形。
默认情况下,这是整个窗口部件。
设置这个属性不会导致窗口部件更新。
如果这个属性被设置为零矩形(比如QRect(0,0,0,0)),那么框架矩形将会等于窗口部件矩形。
也可以参考contentsRect。
使用setFrameRect()来设置这个属性值并且使用frameRect()来得到这个属性值。
frameShadow
这个属性保存的是来自框架风格的框架阴影值。
使用setFrameShadow()来设置这个属性值并且使用frameShadow()来得到这个属性值。
也可以参考frameStyle()和frameShape。
frameShape
这个属性用来操存的是来自框架风格的框架外形值。
使用setFrameShape()来设置这个属性值并且使用frameShape()来得到这个属性值。
也可以参考frameStyle()和frameShadow。
frameWidth
这个属性保存的是被绘制的框架的宽度。
注意框架宽度依赖于框架风格,线宽和中间线宽。
比如,NoFrame风格下,框架宽度为0,而Panel风格下,框架宽度和线宽相同。
框架宽度也包括边白。
也可以参考lineWidth、midLineWidth、frameStyle()和margin。
使用frameWidth()来得到这个属性值。
lineWidth
Thispropertyholdsthelinewidth.这个属性保存的是线宽。
注意HLine和VLine的总线宽由frameWidth()给定,而不是lineWidth()。
默认值为1。
也可以参考midLineWidth和frameWidth。
使用setLineWidth()来设置这个属性值并且使用lineWidth()来得到这个属性值。
margin
这个属性保存的是边白的宽度。
边白是框架最里面的像素和contentsRect()最外面的像素之间的区域。
它被包含在frameWidth()中。
边白是根据backgroundMode()被填充的。
默认值为0。
也可以参考lineWidth和frameWidth。
使用setMargin()来设置这个属性值并且使用margin()来得到这个属性值。
midLineWidth
这个属性保存的是中间线的宽度。
使用setMidLineWidth()来设置这个属性值并且使用midLineWidth()来得到这个属性值。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- QFrame
![提示](https://static.bdocx.com/images/bang_tan.gif)