找回密码
 立即注册

OpenGL相关如何在widget中的一部分显示它,其他地方放置按钮

尚未签到

发表于 2018-12-4 00:00:44 | 显示全部楼层 |阅读模式
1Qter豆
项目需要我用widget的一部分显示三维世界,在设计师模式中拖了一个OpenglWidget进Widget,然后写了一个opengl类,将OpenglWidget提升为这个opengl类,但是显示出错了,这是第一个问题。还有一个预计会有的问题,项目需要用鼠标点击一个图形之后,就能够选中它,进行一些操作,我想的是离屏幕最近,但是具体实现想不出来

附件: 您需要 登录 才可以下载或查看,没有帐号?立即注册
回复

使用道具 举报

累计签到:388 天
连续签到:2 天
发表于 2018-12-4 09:25:37 | 显示全部楼层
很可能是头文件没有定义,再者,你的交互的问题,Qt 是有例子的,又一个三棱锥的例子,你可以看看,
回复

使用道具 举报

累计签到:40 天
连续签到:1 天
发表于 2018-12-4 14:10:04 | 显示全部楼层
本帖最后由 baizy77 于 2018-12-4 14:26 编辑

您定义的类引出了吗?另外,pro文件中包含引出类所在的dll了吗?
回复

使用道具 举报

尚未签到

 楼主| 发表于 2018-12-4 17:09:26 | 显示全部楼层
我已经解决了,解决办法是:本来拖的是OpenGLWidget部件,现在改成拖Widget,然后将这个Widget提升为我定义好的opengl类,其实拖什么部件都没关系,后面这步,是关键的一步,进入.pro文件,进行一次qmake,这样才不会报错,才能运行成功。
引申又有新问题了:原本定义了鼠标事件和键盘事件,现在只有鼠标事件能用,键盘事件没有用了,我想事只在widget的一部分显示,这样属于正常情况,但是如何才能相应键盘事件呢?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

尚未签到

 楼主| 发表于 2018-12-4 17:10:17 | 显示全部楼层
baizy77 发表于 2018-12-4 14:10
您定义的类引出了吗?另外,pro文件中包含引出类所在的dll了吗?

请问我原本定义了鼠标事件和键盘事件,现在只有鼠标事件能用,键盘事件没有用了,我想事只在widget的一部分显示,这样属于正常情况,但是如何才能相应键盘事件呢?
回复

使用道具 举报

尚未签到

 楼主| 发表于 2018-12-4 17:11:13 | 显示全部楼层
Since 发表于 2018-12-4 09:25
很可能是头文件没有定义,再者,你的交互的问题,Qt 是有例子的,又一个三棱锥的例子,你可以看看, ...

请问我原本定义了鼠标事件和键盘事件,现在只有鼠标事件能用,键盘事件没有用了,我想事只在widget的一部分显示,这样属于正常情况,但是如何才能相应键盘事件呢?
回复

使用道具 举报

尚未签到

 楼主| 发表于 2018-12-4 19:56:35 | 显示全部楼层
如图,定义了eventFilter,但是还不起作用,大佬们,请问哪里出错了,我这就是一个简单的旋转的例子,想通过按键来改变转的幅度

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

点评

试试virtual void keyPressEvent(QKeyEvent *);  详情 回复 发表于 2018-12-5 08:28
回复

使用道具 举报

累计签到:40 天
连续签到:1 天
发表于 2018-12-5 08:28:07 | 显示全部楼层
孤高丶逛侠 发表于 2018-12-4 19:56
如图,定义了eventFilter,但是还不起作用,大佬们,请问哪里出错了,我这就是一个简单的旋转的例子,想通 ...

试试virtual void keyPressEvent(QKeyEvent *);
回复

使用道具 举报

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

本版积分规则

孤高丶逛侠

    主题

    帖子

    8

    积分

    Qter1级会员

    Rank: 1

    积分
    8

Qter1级会员

发私信

Qt开源社区——开源 共享 自由

微信扫一扫
查看精品教程!