PyQT中多重继承,其中继承的父类有QObject或QObject的子孙类
如果Child多重继承(Parent_1,Parent_2,Parent_3),其super函数
super(Child, self).__init__()
则会执行继承的最左侧的父类:Parent_1.__init__()
但是如果Parent_2是QObject或QObject的子孙类,
在Child的中__init__()中执行QObject.__init__(self)
则会使Parent_3.__init__(self)被执行
原因不明。。。。。。。。。
例子哈:
from PyQt5.QtCore import QObject
class Parent_1:
def __init__(self):
print('Parent_1.__init__') class Parent_2(Parent_1):
def __init__(self):
super(Parent_2, self).__init__()
print('Parent_2.__init__') class Parent_3:
def __init__(self):
print('Parent_3.__init__') class Child_2( QObject , Parent_2,Parent_3):
def __init__(self):
#QObject.__init__(self)
super(QObject, self).__init__()
#super(Child_2, self).__init__() if __name__ == '__main__': import sys
from PyQt5.QtWidgets import QApplication
app = QApplication(sys.argv)
##################################################### print('---------------------------')
child_2 = Child_2()
#####################################################
sys.exit(app.exec_())
输出结果为:
aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAQAAAABYCAIAAACVur4fAAACwklEQVR4nO3c0XmrIACGYeZygy7iPE7jtXswTHqRGEFBtGgB/++9OylJ7HP4qkaJmaZpmqZXgh060w02Nex57NAZY4zmL98iO3TG9OPh8eZYAMAzEQCkEQCkEQCkEQCkEQCkeQHYodv/BCl/AFCVTQBm72Pv/AFAVbaHQGNvvoKzOH8AUIvoOQAdQEHqJPgzi+PH9TkD3ES+kfAgD+4/eCn2AJDGOQCk8SkQpHEdANK4EgxpBABpBABpBABpBABpBABpBABpBABpwgEkv+tI9suQlDgBLLcxvN1/RffsDCs4I4nhoVYBLP/HY39/A8dnVfF7jAjgoaIBuP/09w3zmPeAwbvd37kRdI7HG7b+wbnbRq+dhd9Xi23h8nbnNxWNOBSAa/nuxfescHYSY7+e9nY7LDzomBsDCG2h+3bsAR4qFoAdusifuu8Nn4lgxj45rKIAQltIAALiJ8He8X/oZ4F5s7I7vbavkEQAuFr8EGgx9u7OYG8PEDppJgBU7EAA/uP+OYA33j28f73s0CWPlPxnJAXf8c9npacCOLupaMSRPYD34U7X9+E9wHrgPF92TxWOfrwZuUbxjwGU/yQWdxC+EgzUFID/FTCRk/HzT//5yXrZ4u+Fe9UTAFAAAUAaAUAaAUAaAUAaAUCacACsCEMrK8K8TSsyJ4nhoZpYETbfVjQ/p8CVJQJ4qKZWhK23Kw8rwtDYirDNC2RhRRgaWxF27QEQ6wHQ2Iowf2VOLgJAQyvCrj/5JQC0siIs9qefFWHI1MSKsO3995/RrAhDJuErwUBNAbAiDAXUEwBQAAFAGgFAGgFAGgFAGgFAGgFAGgFAGgFAGgFAGgFAGgFAGgFAGgFAGgFAGgFAGgFAGgFAGgFAGgFAGgFAGgFAGgFAGgFAGgFAGgFAGgFAGgFAGgFAGgFAGgFAGgFAGgFAGgFA2i+0gYZWPqixfgAAAABJRU5ErkJggg==" alt="" />
PyQT中多重继承,其中继承的父类有QObject或QObject的子孙类的更多相关文章
- Java中方法的继承以及父类未被子类覆盖的方法调用的问题
在看java继承这一块的时候发现了一个问题,即父类未被子类覆盖的方法是如何调用的? 是子类拥有了父类的该方法只是没有显示表示,还是子类调用了父类的该方法. 为此做了一下验证 代码如下: public ...
- C++反汇编第五讲,认识多重继承,菱形继承的内存结构,以及反汇编中的表现形式.
C++反汇编第五讲,认识多重继承,菱形继承的内存结构,以及反汇编中的表现形式. 目录: 1.多重继承在内存中的表现形式 多重继承在汇编中的表现形式 2.菱形继承 普通的菱形继承 虚继承 汇编中的表现形 ...
- C++反汇编第四讲,认识多重继承,菱形继承的内存结构,以及反汇编中的表现形式.
目录: 1.多重继承在内存中的表现形式 多重继承在汇编中的表现形式 2.菱形继承 普通的菱形继承 虚继承 汇编中的表现形式 一丶多重继承在内存中的表现形式 高级代码: class Father1 { ...
- python中多重继承与获取对象
1.python中多重继承 除了从一个父类继承外,Python允许从多个父类继承,称为多重继承. 多重继承的继承链就不是一棵树了,它像这样: class A(object): def __init__ ...
- java基础课程笔记 static 主函数 静态工具类 classpath java文档注释 静态代码块 对象初始化过程 设计模式 继承 子父类中的函数 继承中的构造函数 对象转型 多态 封装 抽象类 final 接口 包 jar包
Static那些事儿 Static关键字 被static修饰的变量成为静态变量(类变量) 作用:是一个修饰符,用于修饰成员(成员变量,成员方法) 1.被static修饰后的成员变量只有一份 2.当成员 ...
- javascript中子类如何继承父类
参考阮一峰的文章:http://javascript.ruanyifeng.com/oop/inheritance.html#toc4 function Shape() { this.x = 0; t ...
- C++反汇编第四讲,反汇编中识别继承关系,父类,子类,成员对象
C++反汇编第四讲,反汇编中识别继承关系,父类,子类,成员对象 讲解目录: 1.各类在内存中的表现形式 备注: 主要复习开发知识,和反汇编没有关系,但是是理解反汇编的前提. 2.子类继承父 ...
- Python多类继承中,子类默认继承哪个父类的构造函数__init__
[1]python中如果子类有自己的构造函数,不会自动调用父类的构造函数,如果需要用到父类的构造函数,则需要在子类的构造函数中显式的调用. [2]如果子类没有自己的构造函数,则会直接从父类继承构造函数 ...
- Mybatis自动生成的BO对象继承公共父类(BO中过滤掉公共属性)
使用mybatis的代码生成工具:mybatis-generator,如果自动生成的BO都有公共的属性,则可以指定这些BO继承父类(父类中定义公共属性) 1.定义父类 注意:属性public,不要使用 ...
随机推荐
- java中如何设置下载文件
如果想要设置某一url为下载文件的方法如下 需要设置文件响应类型,使用response.setContentType,比如jpeg格式的图片.如果想要访问该页面时出现下载保存的窗口,使用respons ...
- ps可选颜色
RGB模式和CMYK模式 青色加红色是黑色->颜料,而蓝色绿色(它们合起来是青色)加红色却是白色->加光 可调整的原色(主色)可调整的主色分为三组RGB三原色:红色.绿色.蓝色CMY三原色 ...
- [Jobdu] 题目1500:出操队形
题目描述: 在读高中的时候,每天早上学校都要组织全校的师生进行跑步来锻炼身体,每当出操令吹响时,大家就开始往楼下跑了,然后身高矮的排在队伍的前面,身高较高的就要排在队尾.突然,有一天出操负责人想了一个 ...
- Codeforces 86C Genetic engineering (AC自己主动机+dp)
题目大意: 要求构造一个串,使得这个串是由所给的串相连接构成,连接能够有重叠的部分. 思路分析: 首先用所给的串建立自己主动机,每一个单词节点记录当前节点可以达到的最长后缀. 開始的时候想的是dp[i ...
- 编译是报error: 'EVNET_COME_TO_FOREGROUND' was not declared in this scope
Compile++ thumb : game_shared <= main.cpp jni/hellocpp/main.cpp: In function 'void Java_org_coco ...
- 每日英语:Robots To Revolutionize China
A new worker's revolution is rising in China and it doesn't involve humans. With soaring wages and a ...
- 【转帖】漫话C++0x(四) —- function, bind和lambda
实在是觉得此文总是去翻感觉不太好.于是果断转过来了,想看原文的请戳:http://www.wuzesheng.com/?p=2032 本文是C++0x系列的第四篇,主要是内容是C++0x中新增的lam ...
- 六、从length和length()方法开始
首先你可以快速回答下面问题吗.当没有任何IDE的情况下,如何得到一个数组的长度,如何得到一个String的长度.我问这个了很对不同水平的开发者:初级的中级的.他们不能快速正确的回答这个问题.当IDE提 ...
- eclipse egit 解决冲突
eclipse egit冲突解决 在 pull 代码的时候 ,从远程仓库与本地仓库进行同步的时候 ,如果服务器版本与本地仓库版本不一致, 需要解决冲突 首先需要将改动的代码commit到本地仓库,冲 ...
- IOS之TableViewCell重用机制避免重复显示问题
常规配置如下 当超过tableView显示的范围的时候 后面显示的内容将会和前面重复. 1 // 这样配置的话超过页面显示的内容会重复出现 2 - (UITableViewCell *)tableVi ...