标签:
day 1:
Qt中类:
理解一个类最好还是从其类代码实现上看。
由此图可看出需要好好研究那几个重要的类:Qt/QEvent/QObject/QWidget/。
QApplication: (比较复杂,且很常用)
app.exec();
进入主事件循环并且等待,直到exit()被调用或者主窗口部件被销毁,并且返回值被设置为exit()(如果通过quit(),exit()被调用,为0)。
QLabel: 提供文本和图片的显示功能。还可以设置显示格式等。
QObject: 是所有Qt对象的基类。
QMainWindow: 提供一个有菜单条、锚接窗口(例如工具条)和一个状态条的主应用程序窗口。主窗口通常用在提供一个大的中央窗口部件(例如文本编辑或者绘制画布)以及周围菜单、工具条和一个状态条。QMainWindow常常被继承,因为这使得封装中央部件、菜单和工具条以及窗口状态变得更容易。继承使创建当用户点击菜单项或者工具条按钮时被调用的槽成为可能。
QWidget: QWidget类是所有用户界面对象的基类。
C++父类与子类转换
QMainWindow *mw = new QMainWindow; QTextEdit *edit = new QTextEdit( mw, "editor" ); //子类类型强制转换为父类类型
//mw是QMainWindow类型,继承自QWidget,但是mw位子要求QWidget* edit->setFocus(); mw->setCaption( "Main Window" ); mw->setCentralWidget( edit ); mw->show();
子类可以转换为父类,但是父类不可转换为子类(想想继承的过程就明白了);子类转换为父类,子类特有的数据丢失。
如果父类对象的引用指向的实际是一个子类的对象,那么父类对象的引用可以强制转化成子类对象的引用。如:
Parent p=new Son() //父类对象引用指向子类的对象;
Son s=(Son)p; --正确
Parent p=new Parent() //父类对象引用指向父类的对象;
Son s=(Son)p; --错误
标签:
原文地址:http://www.cnblogs.com/kwseeker-bolgs/p/4559726.html