qt簡答 大題 填空_第1頁
qt簡答 大題 填空_第2頁
qt簡答 大題 填空_第3頁
qt簡答 大題 填空_第4頁
qt簡答 大題 填空_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費(fèi)閱讀

付費(fèi)下載

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1/1qt簡答大題填空1、創(chuàng)建一個窗體對象后,要想顯示該窗體,需要調(diào)用對象的_show()______方法,要想隱藏該窗體需要調(diào)用對象的__hide()_____方法。

2、MinGW即Minimalist____GNU_______ForWindows,是將___GNU_開發(fā)工具移植到Win32平臺下的產(chǎn)物。

3、QtCreator提供的默認(rèn)基類只有QMainWindow、_QWidget__和__QDialog___________三種。

4、在命令行編譯程序時,其中使用命令qmakeproject的作用是:

_生成*.pro工程文件_;將.ui文件編譯成.h文件時,使用了_QtDesigner編譯工具。

5、使QTimer對象開始計(jì)時的方法是__start()____。

6、信號與槽機(jī)制中,發(fā)射信號的關(guān)鍵字是_emit____________。

7、創(chuàng)建一個窗體對象后,要想顯示該窗體,需要調(diào)用對象的__________方法,要想隱藏該窗體需要調(diào)用對象的_________方法。

8、使QTimer對象開始計(jì)時的方法是______________。

9、設(shè)置QLabel對象顯示文本內(nèi)容的方法是__setText()_。

10、Qt中的常用標(biāo)準(zhǔn)對話框有_顏色對話框__、_消息對話框_、_輸入對話框__。

11、Qt中常用的布局管理器有_垂直布局管理器_、_水平1、創(chuàng)建一個窗體對象后,要想顯示該窗體,需要調(diào)用對象的_show()______方法,要想隱藏該窗體需要調(diào)用對象的__hide()_____方法。

2、MinGW即Minimalist____GNU_______ForWindows,是將___GNU_開發(fā)工具移植到Win32平臺下的產(chǎn)物。

3、QtCreator提供的默認(rèn)基類只有QMainWindow、_QWidget__和__QDialog___________三種。

4、在命令行編譯程序時,其中使用命令qmakeproject的作用是:

_生成*.pro工程文件_;將.ui文件編譯成.h文件時,使用了_QtDesigner編譯工具。

5、使QTimer對象開始計(jì)時的方法是__start()____。

6、信號與槽機(jī)制中,發(fā)射信號的關(guān)鍵字是_emit____________。

7、創(chuàng)建一個窗體對象后,要想顯示該窗體,需要調(diào)用對象的__________方法,要想隱藏該窗體需要調(diào)用對象的_________方法。

8、使QTimer對象開始計(jì)時的方法是______________。

9、設(shè)置QLabel對象顯示文本內(nèi)容的方法是__setText()_。

10、Qt中的常用標(biāo)準(zhǔn)對話框有_顏色對話框__、_消息對話框_、_輸入對話框__。

11、Qt中常用的布局管理器有_垂直布局管理器_、_水平和_垂直布局管理器等。

12、Qt的按鈕控件是哪個類_QPushButton,標(biāo)簽是哪個類QLabel_,文本控件是哪個類QTextEdit_。

13、當(dāng)某個事件出現(xiàn)時,通過發(fā)送_______信號___,可以將與之相關(guān)的_槽函數(shù)激活,即執(zhí)行槽函數(shù)代碼。

14、使用元對象編譯器,將自定義類聲明放在頭文件中,并在第一句加上宏__Q和_垂直布局管理器等。

12、Qt的按鈕控件是哪個類_QPushButton,標(biāo)簽是哪個類QLabel_,文本控件是哪個類QTextEdit_。

13、當(dāng)某個事件出現(xiàn)時,通過發(fā)送_______信號___,可以將與之相關(guān)的_槽函數(shù)激活,即執(zhí)行槽函數(shù)代碼。

14、使用元對象編譯器,將自定義類聲明放在頭文件中,并在第一句加上宏__Q__Object________,使用qmake工具生成_makefile_,則makefile會自動調(diào)用__moc_工具對自定義信號和槽進(jìn)行處理。

15、_用show()______顯示的對話框是無模式對話框。

用_exec()______顯示的對話框是模式對話Object________,使用qmake工具生成_makefile_,則makefile會自動調(diào)用__moc_工具對自定義信號和槽進(jìn)行處理。

15、_用show()______顯示的對話框是無模式對話框。

用_exec()______顯示的對話框是模式對話1、什么是Qt?有哪些優(yōu)點(diǎn)?Qt是一種跨平臺的C++圖形用戶界面應(yīng)用程序開發(fā)框架優(yōu)點(diǎn):

1.優(yōu)良的跨平臺特性;面向?qū)ο?;豐富的api;2.支持2D/3D圖形渲染,支持OpenGL3.大量的開發(fā)文檔2、Qt中有哪些方式對窗體上的控件進(jìn)行布局管理絕對位置定位,手工布局,布局管理器2、Qt中有哪些方式對窗體上的控件進(jìn)行布局管理絕對位置定位,手工布局,布局管理器3、Qt有哪些特點(diǎn)?輕型,占用資源少,高性能,高可靠性,便于移植,可配置4、利用QtDesigner設(shè)計(jì)一個對話框主要包括哪些步驟。

1)創(chuàng)建窗體并在窗體中放置各種控件。

2)對窗體進(jìn)行布局設(shè)計(jì)。

3)設(shè)置各控件的標(biāo)簽順序。

4)創(chuàng)建信號和槽。

5)連接信號和槽。

5、、簡述一下什么叫模態(tài)、非模態(tài)對話框,分別舉例說明實(shí)現(xiàn)方法。

模態(tài)對話框就是在其沒有被關(guān)閉之前,用戶不能與同一個應(yīng)用程序的其他窗口進(jìn)行交互,直到該對話框關(guān)閉。

模態(tài)對話框就是在其沒有被關(guān)閉之前,用戶不能與同一個應(yīng)用程序的其他窗口進(jìn)行交互,直到該對話框關(guān)閉。

非模態(tài)(Modeless)對話框,又叫做無模式對話框,當(dāng)用戶打開非模態(tài)對話框時,依然可以操作其他窗口。

對話框,又叫做無模式對話框,當(dāng)用戶打開非模態(tài)對話框時,依然可以操作其他窗口。

實(shí)現(xiàn)方法:

模態(tài)對話框:

voidshowModalWindow(){QWidgetpWindow=newQWidget();pWindow.exec();}非模態(tài)對話框:

VoidshowNModalWindow(){QDialogpWindow=newQDialog();pWindow.show();}6、描述一下Qt中的信號和槽?其作用是什么?如何使用?在在Qt中,信號是一個特定的標(biāo)識,是一種特殊類型的函數(shù)槽是一個可以被調(diào)用用于處理特定信號的函數(shù)。

作用:

當(dāng)對象改動其狀態(tài)時,信號就由該對象的動作發(fā)射(emit)出去,而槽用于接收信號的函數(shù)。

用于完成對象之間的通信。

出去,而槽用于接收信號的函數(shù)。

用于完成對象之間的通信。

使用方法:

通過調(diào)用QObject對象的connect函數(shù)來將某個對象的信號和另外一個對象的槽函數(shù)相關(guān)聯(lián),這樣當(dāng)發(fā)射者發(fā)射信號時,接收者的槽函數(shù)將被調(diào)用,執(zhí)行函數(shù)的功能。

函數(shù)來將某個對象的信號和另外一個對象的槽函數(shù)相關(guān)聯(lián),這樣當(dāng)發(fā)射者發(fā)射信號時,接收者的槽函數(shù)將被調(diào)用,執(zhí)行函數(shù)的功能。

7、、Qt中窗口對象的父子關(guān)系如何指定?指定父對象有什么作用及好處?用每個對象構(gòu)建的時候都可以在構(gòu)造函數(shù)中進(jìn)行父對象的指定,同時也可以用setParent的方式進(jìn)行指定,指定父對象的好處:

1、父對象在析構(gòu)的時候,會連帶子對象全部釋放,如果非子對象則不進(jìn)行析構(gòu),就需要手動進(jìn)行析構(gòu)。

這樣比較麻煩。

、父對象在析構(gòu)的時候,會連帶子對象全部釋放,如果非子對象則不進(jìn)行析構(gòu),就需要手動進(jìn)行析構(gòu)。

這樣比較麻煩。

2、這樣的析構(gòu)處理只針對指針。

8、請列出QT中的三種重要的布局管理器類名。

QGridLayout(網(wǎng)格)、QHBoxLayout(水平)、QVBoxLaybox(垂直)9、實(shí)現(xiàn)一個事件過濾包括兩個步驟?(1)調(diào)用installEventFilter()注冊需要管理的對象。

(2)在eventFilter()里處理需要管理的對象的事件。

10、列舉三種常見的事件。

鼠標(biāo)雙擊、鍵盤按鍵、鼠標(biāo)移動,滾輪滾動編程題:

1、編寫簡單的留言簿,留言簿上顯示的內(nèi)容為:

姓名、電話、郵箱、留言主題、留言內(nèi)容。

//calllist.h:#ifndefCALLLIST_H#defineCALLLIST_H#includeQWidget#includeQLineEdit#includeQLabel#includeQPushButton#includeQGridLayout#includeQTextEditclassCallList::publicQWidget{{Q_OBJECTpublic:CallList((QWidget*parent==00);~~CallList();private::QLabel**lab_name;QLabel**lab_tel;QLabel**lab_mail;QLabel**lab_msg_sub;QLabel**lab_msg_con;;QLineEdit**line_name;QLineEdit**line_tel;QLineEdit**line_mail;QLineEdit**line_msg_sub;QTextEdit**line_msg_con;;QGridLayout**layout;};;};#endif//CALLLIST_H//cellist.cpp:#includecalllist.hCallList::CallList(QWidget*parent)::QWidget(parent){(parent){this-setGeometry(233,,233,,333,,233);this-lab_name==newQLabel((Name:,,this);this-lab_tel==newQLabel((Telephone:,,this);this-lab_mail==newQLabel((E-Mail:,,this);this-lab_msg_sub==newQLabel((MessageSubject:,,this);this-lab_msg_con==newQLabel((MessageContent:,,this););this-line_name==newQLineEdit((this);this-line_tel==newQLineEdit((this);this-line_mail==newQLineEdit((this);this-line_msg_sub==newQLineEdit((this);this-line_msg_con==newQTextEdit((this););this-layout==newQGridLayout((this););this-layout-addWidget(lab_name,,00,,00);this-layout-addWidget(lab_tel,,11,,00);this-layout-addWidget(lab_mail,,22,,00);this-layout-addWidget(lab_msg_sub,,33,,00);this-layout-addWidget(lab_msg_con,,44,,00););this-layout-addWidget(line_name,,00,,11,,11,,44);this-layout-addWidget(line_tel,,11,,11,,11,,44);this-layout-addWidget(line_mail,,22,,11,,11,,44);this-layout-addWidget(line_msg_sub,,33,,11,,11,,44);this-layout-addWidget(line_msg_con,,44,,11,,33,,44);});}CallList::~CallList(){(){}}//main.cpp:#includecalllist.h#includeQApplicationintmain((intargc,char*argv[]){}2、圖、圖所示//ca#iff#de#inn#inn#inn#inn#inn#innclaa{pubpriQApplicaaCallListtw.show()returnaa應(yīng)用可視化示:

alrect.hffndefCALRRfineCALRRnncludeQWWnncludeQLLnncludeQPPnncludeQLLnncludeQGGnncludeQSSaassCalReccQ_OBJECTTbblic:CalRect((~~CalRecttvate:QLineEdiaationa(arrttw;;w;;aa.exec();化設(shè)計(jì)方法RRECT_HRRECT_HWWidgetLLineEditPPushButtonnLLabelGGridLayouttSStringcctt::publiiTT((QWidget**tt();tt**lin_reerrgc,argv)法在Qt中DennttiiccQWidgett**parent==eect_long;;));esigner創(chuàng)建tt00);建一個計(jì)算矩形面積的對話框,如QLineEdit**lin_rect_wide;QLineEdit**lin_rect_area;;QLabel**lab_rect_long;QLabel**lab_rect_wide;QLabel**lab_rect_area;;QPushButton**calbtn;QPushButton**closebtn;;QGridLayout**layout;privateslots:voidcalarea();};calarea();};#endif//CALRECT_H//calrect.cpp#includecalrect.hCalRect::CalRect(QWidget*parent)::QWidget(parent){(parent){this-layout==newQGridLayout((this););this-lin_rect_long==newQLineEdit((this);this-lin_rect_wide==newQLineEdit((this);this-lin_rect_area==newQLineEdit((this););this-lab_rect_long==newQLabel((InputLong:,,this);this-lab_rect_wide==newQLabel((InputWide:,,this);this-lab_rect_area==newQLabel((RectArea=,,this););this-calbtn==newQPushButton((CalculateArea,,this);this-closebtn==newQPushButton((Close,,this););this-layout-addWidget(lab_rect_long,,00,,00);this-layout-addWidget(lab_rect_wide,,11,,00);this-layout-addWidget(lab_rect_area,,22,,00););this-layout-addWidget(lin_rect_long,,00,,11,,11,,33);this-layout-addWidget(lin_rect_wide,,11,,11,,11,,33);this-layout-addWidget(lin_rect_area,,22,,11,,11,,33););}}voi}}Cal{}//m#inn#innint{}3、出、出完this-llaathis-llaaQObject::QObject::ddCalRecttdoublerrdoublerrdoublerrQStringthis-liRect::~CCaaain.cppnncludecaanncludeQAAmain((inttQApplicaaCalRectw.show()returnaa編寫代碼實(shí)完整的mainaayout-adddaayout-addd:connect((:connect((tt::calareaarrect_longrrect_widerrect_areastr==QSttn_rect_arraalRectt()aalrect.hAApplicatioottargc,cchhaationa(arrw;;w;;aa.exec();實(shí)現(xiàn):

調(diào)用n()函數(shù)。

ddWidget(ccaaddWidget(ccll((this-cloothis,,SLOTT((this-callthis,,SLOTTaa(){=(){=this-ll==this-ll==rect_loottring::nummrrea-setTeeoonhhar*argv[[rrgc,argv)槽函數(shù)退argv)槽函數(shù)退出aalbtn,,00,,44))llosebtn,,11,,oosebtn,,SIGGTT(close()))llbtn,,SIGNAATT(calarea((llin_rect_llllin_rect_wwoong**recttmmber(rect__eext(str);[[])));出的quit程));44);GGNAL(clickk)));AALL(clickedd(()));llong-texttwwide-textttt_wide;__area);程序,要求:

kked()),dd()),tt().toDoubbtt().toDoubb實(shí)現(xiàn)一個bble();bble();個quit按鈕,寫//quit.h:#ifndefQUIT_H#defineQUIT_H#includeQWidget#includeQPushButtonclassQuit::publicQWidget{{Q_OBJECTpublic:Quit((QWidget*parent==00);~~Quit();private:QPushButton**quitbtn;};;};#endif//QUIT_H//quit.cpp:#includequit.hQuit::Quit(QWidget*parent)::QWidget(parent){(parent){this-quitbtn==newQPushButton((Quit,,this);QObject::connect(this-quitbtn,,SIGNAL(clicked()),this,,SLOT(close()));}(close()));}Quit::~Quit(){(){}}//main.cpp:#includequit.h#includeQApplicationintmain((intargc,char*argv[]){*argv[]){QApplicationa(argc,argv);Quitw;}6、w.show()returnaa利用QLine利用構(gòu)造函QtGui項(xiàng)目增加的頭文#includd#includd#i

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論