《QT图形用户界面》PPT课件

《QT图形用户界面》PPT课件

ID:39362512

大小:1.36 MB

页数:44页

时间:2019-07-01

《QT图形用户界面》PPT课件_第1页
《QT图形用户界面》PPT课件_第2页
《QT图形用户界面》PPT课件_第3页
《QT图形用户界面》PPT课件_第4页
《QT图形用户界面》PPT课件_第5页
资源描述:

《《QT图形用户界面》PPT课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、图形用户界面QT第四章本章计划可视对象的返回值和数据<初级>鼠标,键盘,定时器等事件的捕捉一些事件的虚函数重载,信号从基类转发掌握QDialog,QTimer,QTime掌握QSettings,QSqlDatabase了解QtNetWork掌握QGraphicsView,QGraphicsScene掌握QGraphicsItem,QPixmap计算器里的关于窗口上面有2个按钮,确定和取消,QMainWindow怎么知道你按了哪一个呢?首先,那个是一个按钮组buttonBox,是QDialog组件里就关联好信号的。在信号和槽编辑器里能看的到。我们可以看看QDialog的槽accept()和

2、rejecct()起什么作用,看HELP文档可视对象的返回值和数据QDialog的槽accept()和rejecct()HELP文档里是这么解释的,看懂了吗?voidQDialog::accept() [virtualslot]Hidesthemodaldialogandsetstheresultcodeto Accepted.voidQDialog::reject() [virtualslot]Hidesthemodaldialogandsetstheresultcodeto Rejected.voidQDialog::accepted() [signal]Thissignalisem

3、ittedwhenthedialoghasbeenacceptedeitherbytheuserorbycallingaccept()ordone()withtheQDialog::Acceptedargument.QDialog的返回值跟据HELP文档,我们可以这样写代码鼠标,键盘,定时器等事件的捕捉事件在Qt里分很多种,比如鼠标,键盘,定时器,窗体扩大缩小,有鼠标飘过,有数值变化等等,任何一个小动作,在GUI里都会触发某种事件。当事件产生时,怎么来进行处理呢?跟据C++的语言特性,虚函数重载可以解决这个问题,所有可以处理的事件,一定都是虚函数。现在我们来做一个close事件处理。cl

4、ose事件的捕捉还记得第一个例子吗,一个按钮一按就关闭窗口了。当然按右上角的X,也可以关闭,但有的窗口按了右上角的X会跳出一个框来。这个是通过重载关闭事件而处理出的一个框,怎么做呢?QMainWindow的close事件在哪?刚刚讲过,所有能处理的事件,一定是虚函数,那虚函数去哪找?去protected里找。现在我们要关闭的是QMainWindow,并且要它跳出那个框出来,怎么找相应事件呢?来查下HELP文档QMainWindow的close事件在哪?点不出来吧?为啥?因为QMainWindow没有,那怎么查?去找它的基类,它一定是从基类里继承了所有的事件。点进Qwidget这个基类以后

5、,再点ProtectedFuntionsQMainWindow的close事件在哪?找到close事件了点进看去说明和例子Bydefault,theeventisacceptedandthewidgetisclosed.Youcanreimplementthisfunctiontochangethewaythewidgetrespondstowindowcloserequests.Forexample,youcanpreventthewindowfromclosingbycallingignore()onallevents.你看不懂可以复制查google百度有道翻译就对了。要还在发呆,就

6、是你的不对了。重载基类的虚函数的代码怎么写1.想想C++语法,派生类怎么去重载基类的虚函数把声明抄过来.cpp的重载代码怎么写?C语言就强调了,用谁的东西,就include谁的头文件一按X就重载了close事件,在这里我们用QMessageBox速生成了一个小框,然后取它的返回值看你按了什么键,如果按的取消,据据QMainWindow的HELP文档用ignore()接口忽略close事件中文显示的处理#includeintmain(intargc,char*argv[]){QApplicationa(argc,argv);QTextCodec*codec=QTex

7、tCodec::codecForName("GB2312");QTextCodec::setCodecForLocale(codec);QTextCodec::setCodecForCStrings(codec);QTextCodec::setCodecForTr(codec);MainWindoww;w.show();returna.exec();}一个窗口有多少种事件可以处理呢?看看HELP文档里的protected里有多少种事

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。