社区
Qt
帖子详情
qt 中 QGraphicsScene中的clear方法会把scene中Item中的内容清掉吗
hahahhah1
2016-08-10 11:04:51
qt 中 QGraphicsScene中的clear方法会把scene中Item中的内容清掉吗
...全文
1530
3
打赏
收藏
qt 中 QGraphicsScene中的clear方法会把scene中Item中的内容清掉吗
qt 中 QGraphicsScene中的clear方法会把scene中Item中的内容清掉吗
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
x_todoo
2017-07-24
打赏
举报
回复
您好 请问您是怎么解决的,我现在也碰到了类似的问题
hahahhah1
2016-08-14
打赏
举报
回复
问题已经得到解决解决了
冷静忍耐
2016-08-10
打赏
举报
回复
clear会把QGraphicsItem都移除和删除 但是如果你重写了QGraphicsItem,自己定义的数据需要在析构函数中删除
QT
图片缩放
实现该功能主要通过对QGraphicsView进行重现,才能实现鼠标控制对图片的缩放和拖动 使用
方法
: 1.添加重写后的文件 SOURCES += \ interactive_view.cpp \ pix
item
.cpp HEADERS += \ interactive_view.h \ pix
item
.h 2.调用 QGraphics
Scene
*m_
scene
; InteractiveView *view ; //对整个界面进行重写 Pix
Item
*m_pix
Item
; //对
item
进行重写 QPixmap *pixmap; view=new InteractiveView(ui->graphicsView); //重载重写之后graphicsView m_
scene
=new
QGraphics
Scene
; //声明场景 view->resize(701, 479);//点击空白的窗口,程序
会
崩 m_
scene
->
clear
();//清除场景 //恢复到原来的尺寸 view->setTransformationAnchor(QGraphicsView::AnchorViewCenter); QMatrix q; q.setMatrix(1,view->matrix().m12(),view->matrix().m21(),1,view->matrix().dx(),view->matrix().dy()); view->setMatrix(q,false); pixmap = new QPixmap(filePath); m_pix
Item
= new Pix
Item
(pixmap);//加载图片到单元 m_
scene
->add
Item
(m_pix
Item
);//在场景
中
添加单元 //设置场景的宽高和起点 view->set
Scene
Rect(-pixmap->width()/2,-pixmap->height()/2,pixmap->width(),pixmap->height()); //在窗口
中
添加场景 view->set
Scene
(m_
scene
); //对窗口进行缩放,填写参数为宽高缩放比例 view->scale(701.0/pixmap->width(),479.0/pixmap->height()); //显示窗口 view->show();
QT
中
QGraphics
Scene
的坑
坑2:用成员变量的指针形式,如果涉及到重新绘图,则需要在每一次重绘之前,使用
clear
函数清除(切记不能在show后面
clear
,一定要在add之前清除。坑1:
QGraphics
Scene
最好是使用指针形式,尽量不要用普通形式,反正我是怎么都不对。背景:需要一直刷新QGraphicsView,使用
QGraphics
Scene
。编译环境:MinGW 8.1.0 32 bit for C++
QT
版本:
Qt
_5.15.2。
QGraphics
Scene
析构或
clear
()崩溃问题
QGraphics
Scene
析构或
clear
()崩溃问题 原因分析 罪魁祸首 —— QGraphics
Item
的多次释放
QGraphics
Scene
析构或
clear
()
会
delete未移除的
Item
几大情形
item
被智能指针std::shared_ptr等管理,而未移除
item
中
附属
item
被加入
scene
中
,主
item
移除未跟随移除 忠告 注意
item
由谁管理,怎么释放何时释放,要明明白白,清清楚楚,才能远离各种坑 ...
QT
笔记
QGraphics
Scene
介绍
QT
QGraphics
Scene
类介绍 分别介绍了以下
内容
: 1. 类说明 2. 公共属性 3. 公共函数 4. 设置相关的函数 5. 槽函数 6. 信号量 7. Event事件
Qt
中
使用
QGraphics
Scene
时出现的问题
最近使用
Qt
中
的
QGraphics
Scene
时出现了问题 代码如下: void MainWindow::on_pushButton_2_clicked() { image = new QImage(); QString path=QFileDialog::getOpenFileName(this,"open","../","Image files (*.bmp *.jpg *.pbm *.pgm *.png *.ppm *.xbm *.xpm)"); if(!path.isEmpty
Qt
16,203
社区成员
26,591
社区内容
发帖
与我相关
我的任务
Qt
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
复制链接
扫一扫
分享
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章