找回密码
 立即注册
收起左侧
楼主: yafeilinux

第19篇 2D绘图(九)图形视图框架(上)

121
回复
91283
查看
  [复制链接]
累计签到:75 天
连续签到:1 天
2013-7-29 11:48:54 显示全部楼层
cctry_songchao 发表于 2013-7-29 11:27
好了就行,ok 但是你那个QDrag类确实有#include 头文件啊 怎么还不行呢? 为啥加QWidget就行了呢?    ...

按照报错的提示,我觉得 QDrag()构造函数的参数应该是QWidget*类型的。QT 5 把好些头文件都分开了,所以得包含 <QWidget>头文件
回复 支持 反对

使用道具 举报

累计签到:1568 天
连续签到:1 天
2013-7-30 17:41:15 显示全部楼层
noway 发表于 2013-7-29 11:48
按照报错的提示,我觉得 QDrag()构造函数的参数应该是QWidget*类型的。QT 5 把好些头文件都分开了,所 ...

如果大家有时间可以研究下,如果只是学习,建议先使用Qt 4版本。
回复 支持 反对

使用道具 举报

累计签到:75 天
连续签到:1 天
2013-7-31 19:51:52 显示全部楼层
yafeilinux 发表于 2013-7-30 17:41
如果大家有时间可以研究下,如果只是学习,建议先使用Qt 4版本。

好的,谢谢!!!!!
回复 支持 反对

使用道具 举报

累计签到:1 天
连续签到:1 天
2013-9-11 11:18:50 显示全部楼层
我也出现了很4楼一样的报错。方式一样的。不过我自己建立还是不行!!开发环境xp+qt4.8.5+qtcreater2.8.1.
回复 支持 反对

使用道具 举报

累计签到:1568 天
连续签到:1 天
2013-9-11 11:36:23 显示全部楼层
loveywm 发表于 2013-9-11 11:18
我也出现了很4楼一样的报错。方式一样的。不过我自己建立还是不行!!开发环境xp+qt4.8.5+qtcreater2.8.1. ...

先下载源码试试!代码应该是没有问题的,可能是操作上的问题。

如果还是不行,可以把具体报错和代码贴出来。
回复 支持 反对

使用道具 举报

累计签到:1 天
连续签到:1 天
2013-9-11 11:39:23 显示全部楼层
找到原因了!!原来是在创建的时候,继承那个地方默认的是选择了一个继承方式,而那个继承方式里面没有,所以就报错了!!
在第二步details的时候注意这两个选项
base class 这个选项可以写QGraphicsItem类
Type information 这个默认会有选择的,选择none就没问题!!
回复 支持 反对

使用道具 举报

累计签到:1 天
连续签到:1 天
2013-9-11 11:40:29 显示全部楼层
yafeilinux 发表于 2013-9-11 11:36
先下载源码试试!代码应该是没有问题的,可能是操作上的问题。

如果还是不行,可以把具体报错和代码贴出 ...

谢谢!问题被我找到了!!
回复 支持 反对

使用道具 举报

累计签到:18 天
连续签到:1 天
2013-9-11 17:50:44 显示全部楼层
文章有点长,建议分几个帖子来发。最近一也一直在用图形视图框架
回复 支持 反对

使用道具 举报

累计签到:3 天
连续签到:1 天
2013-12-4 22:43:47 显示全部楼层
请问  刚开始的graphicsView01项目 运行失败  我的是Qt5.1  
根据错误提示在网上找解决方法  首先是在pro里添加了QT += widgets  再在main文件里添加了头文件<QApplication>和<QGraphicsScene>  运行还是出错
请问我该怎么修改?
回复 支持 反对

使用道具 举报

累计签到:1568 天
连续签到:1 天
2013-12-6 13:50:44 显示全部楼层
bdgboss@126.com 发表于 2013-12-4 22:43
请问  刚开始的graphicsView01项目 运行失败  我的是Qt5.1  
根据错误提示在网上找解决方法  首先是在pro里 ...

http://www.qter.org/forum.php?mod=viewthread&tid=903
先看下这个吧。
回复 支持 反对

使用道具 举报

累计签到:94 天
连续签到:1 天
2013-12-10 21:24:12 显示全部楼层
cctry_songchao 发表于 2013-7-26 21:50
解决了,原因是我在新建MyItem类的时候我选择基类为QGraphicsItem,但是没有这个类,我自己写的,然后操作
...

什么叫在public继承QGraphicsItem???我也出现这个问题了,但是不知道你这个是怎么继承的?
回复 支持 反对

使用道具 举报

尚未签到

2013-12-16 16:26:23 显示全部楼层
很好的学习资料啊,谢谢楼主
回复 支持 反对

使用道具 举报

尚未签到

2013-12-16 16:43:59 显示全部楼层
没理解三者坐标系的变化,很是疑惑
回复 支持 反对

使用道具 举报

累计签到:1568 天
连续签到:1 天
2013-12-17 16:00:18 显示全部楼层
赵洪武 发表于 2013-12-16 16:43
没理解三者坐标系的变化,很是疑惑

这个需要实践过才容易理解。
回复 支持 反对

使用道具 举报

累计签到:4 天
连续签到:1 天
2014-2-1 17:41:09 显示全部楼层
编译环境:win8 (32位) +Qt_4_8_1+2.4.1
提示错误:
C:/Qt/qtcreator-2.4.1/mingw/bin/mingw32-make.exe -f Makefile.Debug
mingw32-make.exe[1]: Entering directory `F:/C++develop/prongram/graphicsView01-build-desktop-Qt_4_8_1__4_8_1____'
g++ -c -g -frtti -fexceptions -mthreads -Wall -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_GUI_LIB -DQT_CORE_LIB -DQT_HAVE_MMX -DQT_HAVE_3DNOW -DQT_HAVE_SSE -DQT_HAVE_MMXEXT -DQT_HAVE_SSE2 -DQT_THREAD_SUPPORT -DQT_NEEDS_QMAIN -I"c:\Qt\4.8.1\include\QtCore" -I"c:\Qt\4.8.1\include\QtGui" -I"c:\Qt\4.8.1\include" -I"c:\Qt\4.8.1\include\ActiveQt" -I"debug" -I"..\graphicsView01" -I"." -I"c:\Qt\4.8.1\mkspecs\win32-g++" -o debug\main.o ..\graphicsView01\main.cpp
..\graphicsView01\main.cpp: In function 'int qMain(int, char**)':
..\graphicsView01\main.cpp:12: error: cannot allocate an object of abstract type 'MyItem'
..\graphicsView01\/myitem.h:11: note:   because the following virtual functions are pure within 'MyItem':
c:\Qt\4.8.1\include/QtGui/../../src/gui/graphicsview/qgraphicsitem.h:331: note:         virtual QRectF QGraphicsItem::boundingRect() const
c:\Qt\4.8.1\include/QtGui/../../src/gui/graphicsview/qgraphicsitem.h:352: note:         virtual void QGraphicsItem::paint(QPainter*, const QStyleOptionGraphicsItem*, QWidget*)
mingw32-make.exe[1]: Leaving directory `F:/C++develop/prongram/graphicsView01-build-desktop-Qt_4_8_1__4_8_1____'
mingw32-make.exe[1]: *** [debug/main.o] Error 1
mingw32-make.exe: *** [debug] Error 2
17:36:38: 进程"C:\Qt\qtcreator-2.4.1\mingw\bin\mingw32-make.exe"退出,退出代码 2 。
构建项目graphicsView01 时发生错误 (目标: 桌面)
当执行构建步骤 'Make'时
回复 支持 反对

使用道具 举报

累计签到:4 天
连续签到:1 天
2014-2-1 23:28:54 显示全部楼层
已经找到原因了,直接粘贴你代码,其中关键字与
回复 支持 反对

使用道具 举报

累计签到:4 天
连续签到:1 天
2014-2-1 23:29:44 显示全部楼层
已经找到原因了,直接粘贴你代码,其中关键字与函数没有空格导致出错!

回复 支持 反对

使用道具 举报

累计签到:4 天
连续签到:1 天
2014-2-2 00:17:09 显示全部楼层
编译环境:win8 (32位) +Qt_4_8_1+2.4.1
使用论坛下载的graphicsView02的原程序编译都提示:
F:\C++develop\prongram\graphicsView02-build-desktop-Qt_4_8_1__4_8_1____\..\graphicsView02\myitem.cpp:3: 错误:undefined reference to `vtable for MyItem'
回复 支持 反对

使用道具 举报

累计签到:1568 天
连续签到:1 天
2014-2-7 10:11:38 显示全部楼层
ktz 发表于 2014-2-2 00:17
编译环境:win8 (32位) +Qt_4_8_1+2.4.1
使用论坛下载的graphicsView02的原程序编译都提示:
F:\C++devel ...

这个应该不会啊。win 7下测试没有问题,可以换个环境试试。
回复 支持 反对

使用道具 举报

尚未签到

2014-2-19 19:35:52 显示全部楼层
D:\qt\graph01\myitem.h:4: 错误GraphicsItem: No such file or directory
#include <QGraphicsItem>。请问这是怎么回事呢
                         ^
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

公告
可以关注我们的微信公众号yafeilinux_friends获取最新动态,或者加入QQ会员群进行交流:190741849、186601429(已满) 我知道了