QGraphicsItem的paint函数的一些相关问题
来源:互联网 发布:p2p网络黑名单系统查询 编辑:程序博客网 时间:2024/06/08 19:07
在QGraphicsItem中,一个成员函数paint(),其声明如下:
void QGraphicsItem::paint ( QPainter * painter, const QStyleOptionGraphicsItem * option, QWidget * widget = 0 )
在QGraphicsScene重绘绘制时,需要调用其中的每一个QGraphicsItem的paint()函数来逐个重新绘制组件。这个函数的参数 中,painter是绘图设备的painter,option定义了一些绘图参数,如绘图区域大小等,而widget则是绘图设备本身,paint()函 数实际上就是用painter在widget上画一个图,图形的具体内容则有paint()的具体实现确定。不同的QGrahpicsItem的子类对 paint()函数做了不同的实现,我们也可以按照自己的需要,实现自己的paint()函数(比如原来实现效率太低需要实现一个高效率的版本等等),比如我们可以考虑给paint函数里所在的类设置一个类成 员函数指针,在paint中调用这个成员函数指针来给程序增加一些灵活定等等。
有些情况下,我们通过paint重绘需要手动的调用QGraphicsScene的update()函数来刷新界面。当然,有时候刷新界面还会出些问题, 在update()调用之后不会跟着刷新(比如在Qt 4.2.2中)。这个时候我们需要修改一下boundingRect()函数,也就是继承QGrahpicsItem的boundingRect()函 数,返回一个区域。
void QGraphicsItem::paint ( QPainter * painter, const QStyleOptionGraphicsItem * option, QWidget * widget = 0 )
在QGraphicsScene重绘绘制时,需要调用其中的每一个QGraphicsItem的paint()函数来逐个重新绘制组件。这个函数的参数 中,painter是绘图设备的painter,option定义了一些绘图参数,如绘图区域大小等,而widget则是绘图设备本身,paint()函 数实际上就是用painter在widget上画一个图,图形的具体内容则有paint()的具体实现确定。不同的QGrahpicsItem的子类对 paint()函数做了不同的实现,我们也可以按照自己的需要,实现自己的paint()函数(比如原来实现效率太低需要实现一个高效率的版本等等),比如我们可以考虑给paint函数里所在的类设置一个类成 员函数指针,在paint中调用这个成员函数指针来给程序增加一些灵活定等等。
有些情况下,我们通过paint重绘需要手动的调用QGraphicsScene的update()函数来刷新界面。当然,有时候刷新界面还会出些问题, 在update()调用之后不会跟着刷新(比如在Qt 4.2.2中)。这个时候我们需要修改一下boundingRect()函数,也就是继承QGrahpicsItem的boundingRect()函 数,返回一个区域。
- QGraphicsItem的paint函数的一些相关问题
- QGraphicsItem 的坐标问题
- QGraphicsItem的坐标问题
- QGraphicsItem的子类化问题
- QGraphicsItem调用update函数的原理
- 一个QGraphicsItem 坐标变换的问题
- 常见的QGraphicsItem
- 自己实现的qgraphicsitem
- QGraphicsItem的缩放
- paint 画笔的一些属性
- Paint 画笔的一些属性
- Qt中移动QGraphicsItem的注意问题,path的闭合
- QGraphicsItem中子Item与父Item的消息传递问题
- QGraphicsItem中子Item与父Item的消息传递问题
- opencv相关的一些函数
- 一些JSON相关的函数
- 一些JSON相关的函数
- Paint类的其它函数
- FCKeditor2.5.1的设置和修改(for PHP),附下载
- 窗口弹出关闭汇总。
- EasyJWeb+JPA(Hibernate3.2)+Spring2构架缓存技术
- Web MVC框架-命令及页面跳转
- FleaPHP 开发指南 - 5. 应用程序设置
- QGraphicsItem的paint函数的一些相关问题
- 使用Mylyn插件管理bug
- 系统集成项目招标要诀
- 不一样的敏捷开发实践
- c#.net多线程编程教学(4):线程池和异步编程
- 李开复:算法的力量
- 文本限制输入
- pcAnywhere在局域网内的使用图解
- 你可能不知道的五个组合键