欢迎来到天天文库
浏览记录
ID:49186408
大小:1.47 MB
页数:12页
时间:2020-02-29
《Qt Creator 学习记录.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、QtCreator的学习记录1.(1)设置Qt显示中文QTextCodec::setCodecForTr(QTextCodec::CodeForname("UTF-8"));-QT4注:QT5识别UTF-8,所以不需要这条代码。(2)QT结构Qt图形库是一个组织严谨的C++类库3.窗口部件3.1Widget(1)QtCreator提供的默认基类只有:QMainWindow、QWideget、QDialog。QMainWindow提供带菜单栏和工具栏的主窗口类。QDialog是各种对话框的基类,而他们全继承自QWidget。不仅如此,所有的窗口部件都继承自QWidget。(1)建立一
2、个新窗口QWidget*wdiget=newQWidget;//新建Qwidget类对象,默认parent参数是0,所以它是个窗口QLabel*label=newQLabel;//新建QLabel对象,默认perent参数是0,所以它是个窗口(2)设置窗口标题widget->setWindowTitle(QObject::tr("我是widget"));//设置窗口标题(3)new操作符为label12分配空间,但是并没有用delete进行释放。这是因为Qt中销毁父对象的时候会自动销毁子对象。(4)显示窗口信息label->setText(QObject::tr(“我是个label
3、窗口”));(5)设置窗口大小label->resize(150,20);//150为X坐标,20为Y坐标。(6)设置窗口位置label->move(200,100);//200为X坐标,100为Y坐标(8)更改新建窗口的类型QWidget*widget=newQWidget(0,Qt::Dialog
4、Qt::FramelessWindowHint);QLabel*label=newQLabel(0,Qt::SplashScreen
5、Qt::WindowStaysOnTopHint);Qt::Dialog:对话框类型Qt::SplashScreen:欢迎框类型Qt::Framele
6、ssWindowHint:一个没有边框的窗口Qt::WindowStaysOnTopHint:使该窗口停留在所有其他窗口上面(9)QDebug()函数QDebug()函数可以将调试信息直接输出到控制台,QtCreator中是输出到应用程序输出栏。qDebug()<<"geometry:"<的区别如果定义如下:A*p则使用:p->play();左边是结构指针。Ap则使用:p.paly();左边是结构变量。总结:箭头(->):左边必须为指针;点号(.):左边必须为实体
7、3.2Dialog(1)对话框分为:模态的(modal)和非模态的(modeless)模态对话框:就是在没关闭它之前,不能与同一应用程序的其他窗口进行交互。要使一个对话框成为模态对话框,只需调用它的exec()函数即可。非模态对话框:既可以与它交互,也可以与同一应用程序的其他窗口进行交互。要建立一个非模态对话框,先用new操作建立,然后用show()函数显示。(2)新建一个QDialog类,this参数QDialog*dialog=newQDialog(this);//定义了一个指向QDialog类对象的指针变量,new运算符开辟一个新的内存空间//dialog->setModal
8、(true);//添加此程序可以变为模态对话框。dialog->show();//建立非模态对话框另一种:QDialogdialog(this);dialog.exec;//建立模态对话框(3)setWindowModality():它有一个参数来设置模态对话框要阻塞的窗口类型。可以是:Qt::NonModal(不阻塞任何窗口,就是非模态)Qt::WindowModal(阻塞它的父窗口和所有祖先窗口以及它的子窗口)Qt::ApplicationModal(阻塞整个应用程序的所有窗口)而setModal()函数默认的设置的是Qt::ApplicationModal.(4)信号和槽头文
9、件中publicslots://自定义一个槽,且可以被类外调用voidshowChildDialog();信号槽快速声明方法:手动关联单击showChildDialog()槽,同时按下Alt+Enter键,选择“在mywidget.cpp中添加定义”,再按Enter。编辑器就会转到mywidget.cpp文件中,并已创建showChildDialog()信号槽的自动关联:connect(ui->showChildButton,SIGNAL(clicked()),thi
此文档下载收益归作者所有