qt 多重继承_Qt多重继承和信号
由于QObject,我在QT中遇到了关于多重继承的问题。我知道很多其他人也有同样的问题,但我不知道该如何解决。Qt多重继承和信号
class NavigatableItem : public QObject
{
Q_OBJECT
signals:
void deselected();
void selected();
void activated();
};
class Button : public NavigatableItem, public QToolButton
{
Q_OBJECT
...
}
class MainMenuOption : public Button
{
Q_OBJECT
...
}
当我这样做
MainMenuOption* messages = new MainMenuOption();
connect(messages, SIGNAL(selected()), SLOT(onMenuOptionSelected()))
我会得到错误:
QObject' is an ambiguous base of 'MainMenuOption'
我之所以让因为信号的自QObject NavigatableItem enherit。有没有办法做到这一点?
编辑:
添加虚拟到每个的传承声明,仍然给我相同的错误:
class NavigatableItem : public virtual QObject
class Button : public virtual NavigatableItem, public virtual QToolButton
class MainMenuOption : public virtual Button
即使在一个“干净所有”,“运行的qmake”和“建立所有” 。
2011-03-23
RvdK
+5
不能从多个继承QObject子类。其中只有一个可以是QObject,它必须是列表中的第一个。 –
2011-03-23 10:47:14
+1
尝试删除这些'moc_ *','* .obj'文件并重建所有文件。 –
2011-03-23 11:58:18
+0
查看更新后的问题。重建没有解决它。 –
2011-03-23 13:38:04
qt 多重继承_Qt多重继承和信号相关推荐
- qt 信号多个链接槽_Qt原理窥探信号槽的实现细节
简介 本文是<Qt进阶之路>系列文章的特别篇,涛哥在这里讨论Qt信号-槽的实现细节. 上次的文章<Qt实用技能4-认清信号槽的本质>中介绍过,信号-槽是一种对象之间的 通信机制 ...
- Qt计算器开发(二):信号槽实现数学表达式合法性检查
表达式的合法性 由于我们的计算器不是单步计算的,所以我们能够一次性输入一个长表达式.然而假设用户输入的长表达式不合法的话,那么就会引发灾难.所以有必要对于用户的输入做一个限制. 一些限制举例: 比方, ...
- Qt 控制台 使用connect连接信号和槽
导言: Qt的信号号和槽 (Signal&Slots)是Qt的特性,深入理解该机制是能够精通Qt编程的关键. 信号号和槽 (Signal&Slots)的作用: 信号和槽用于两个对象之间 ...
- Qt Creator将对象连接到信号
Qt Creator将对象连接到信号 将对象连接到信号 添加信号处理程序 将对象连接到信号 为了在特定对象发出特定信号时接收通知,对象定义应声明一个名为on 的信号处理程序,其中是信号的名称,首字母大 ...
- Qt 多线程中地信号与槽
Qt 多线程中地信号与槽 函数原型: 1 QObject::connect(const QObject *sender, const char *signal, const QObject *rece ...
- QT核心机制3:信号与槽
个人博客对应地址:QT核心机制3:信号与槽 写在前面 这篇文章基本是对Qt官方文档某些章节的翻译理解了,翻译这些章节的原因是我认为这些是Qt中最核心的东西,翻译的过程也就是强迫自己认真去读它们的过程, ...
- 最新QT从入门到实战完整版(08.qt中的坐标系-09 信号和槽-点击按钮关闭窗口_)
最新QT从入门到实战完整版(08.qt中的坐标系-09 信号和槽-点击按钮关闭窗口_) 一.08.qt中的坐标系 二,09 信号和槽-点击按钮关闭窗口_ 来自 一.08.qt中的坐标系 二,09 信号 ...
- 【QT开发笔记-基础篇】| 第一章 QT入门 | 1.6 自定义信号槽
本节对应的视频讲解:B_站_链_接 https://www.bilibili.com/video/BV1gA4y1d7gz 上节课,我们讲解了标准信号槽,标准信号槽中,信号和槽函数,都是 Qt 框架定 ...
- qt qthead里如何响应信号_Qt 中的多线程技术(翻译)
原文链接 Multithreading Technologies in Qtdoc.qt.io 正文 Qt 提供一系列的类与函数来处理多线程.Qt 开发者们可以使用下面四种方法来实现多线程应用. Q ...
最新文章
- document.querySelector和querySelectorAll方法
- BZOJ 1103 大都市MEG
- python遍历目录下所有文件_Python递归遍历目录下所有文件
- rs232读取智能电表_三相电表怎么看度数 怎么计算总电量
- Python开发【第二篇】:Python基本数据类型
- Docker-Compose 基础与实战,看这一篇就够了 | 原力计划
- 洛谷——P1652 圆
- ajax怎么在服务器返回值,node.js+Ajax实现获取HTTP服务器返回数据?
- Linux设备驱动模型-Bus
- 单片机计算机实训总结,单片机实习心得体会三篇
- 在VC++中的MFC利用一个dialoge对话框中按钮调用另一个dialoge对话框
- web前端期末大作业--HTML+CSS+JS实现美女拼图游戏
- 关于python数据的纬度_Python插值时间,纬度和经度
- 表格识别综述与相关实战
- 什么是云主机?有什么用途?
- c语言关键字之auto
- 图纸打印什么时候用蓝图_cad图怎么打印成施工蓝图
- js里分割字符串,数组拼接
- ORACLE-使用DBCA创建数据库
- python 实现单链表 Lined List
热门文章
- 希沃展台如何使用_简单又实用的希沃视频展台
- RS485电压测试(电工Demo)
- 炫酷创意个人简历ppt模板
- c语言编辑机器人行走,c语言课程设计报告-步行机器人.doc
- php数组及解析,PHP基本知识(数组解析)
- 全国各地计算机技术与软件资格考试机构网站汇总
- QQ新版本正式发布,带有微信刚更新的功能,不知道大家发现了吗
- python学习-->tkinter模块学习之Listbox(列表框学习)
- python内置函数sum_python必备内置函数-sum(iterable, /, start=0)
- 晚上吃外卖适合点什么