當(dāng)wxUSE_GUI=1時(shí),wxApp類(lèi)代表應(yīng)用程序本身。
除了wxAppConsole提供的特性外,它還可以跟蹤頂部窗口(SetTopWindow()),并添加了對(duì)視頻模式的支持(SetDisplayMode())
一般來(lái)說(shuō),僅面向gui的應(yīng)用程序的應(yīng)用程序范圍設(shè)置可以從wxApp(或wxSystemSettings或wxSystemOptions類(lèi))中訪問(wèn)。
#include
由該類(lèi)發(fā)出的事件
由該類(lèi)發(fā)出的事件的事件宏:
EVT_QUERY_END_SESSION(函數(shù)):
處理查詢(xún)結(jié)束會(huì)話事件,提供成員函數(shù)。看到wxCloseEvent。
EVT_END_SESSION(函數(shù)):
處理結(jié)束會(huì)話事件,提供成員函數(shù)??吹絯xCloseEvent。
EVT_ACTIVATE_APP(函數(shù)):
處理一個(gè)wxEVT_ACTIVATE_APP事件??吹絯xActivateEvent。
EVT_HIBERNATE(函數(shù)):
處理hibernate事件??吹絯xActivateEvent。
EVT_DIALUP_CONNECTED(函數(shù)):
與網(wǎng)絡(luò)建立連接??吹絯xDialUpEvent。
EVT_DIALUP_DISCONNECTED(函數(shù)):
網(wǎng)絡(luò)連接中斷。看到wxDialUpEvent。
EVT_IDLE(函數(shù)):
處理wxEVT_IDLE事件??吹絯xIdleEvent。
庫(kù):wxBase
類(lèi)別:應(yīng)用和流程管理
wxApp::OnInit()這必須由應(yīng)用程序提供,并且通常會(huì)創(chuàng)建應(yīng)用程序的主窗口,可選調(diào)用SetTopWindow()。
你可以使用OnExit()來(lái)清理這里初始化的東西,前提是函數(shù)返回true。
請(qǐng)注意,如果您想使用所提供的被wxWidgets提供的命令行處理
返回true繼續(xù)處理,返回false立即退出應(yīng)用程序。
wxFrame Class一個(gè)frame 是一個(gè)窗口,其大小和位置(通常)可以由用戶(hù)更改。
它通常有厚厚的邊框和一個(gè)標(biāo)題欄,并且可以選擇
包含一個(gè)菜單欄,工具欄和狀態(tài)欄。一個(gè)框架可以包含任何
不是框架或?qū)υ捒虻拇翱凇?/p>
通過(guò)CreateStatusBar()和CreateToolBar()函數(shù)創(chuàng)建的具有狀態(tài)欄和工具欄的框架管理這些窗口,并調(diào)整GetClientSize()返回的值,以反映應(yīng)用程序窗口可用的剩余大小。
如果要將框架用作輸入表單,則不應(yīng)將控件創(chuàng)建為其子控件。相反,是wxPanel
應(yīng)該被創(chuàng)建為框架的唯一子框架,作為父框架
的實(shí)際控制(框架將大小面板,所以它總是
填充它的客戶(hù)區(qū)域)。這樣做將確保選項(xiàng)卡之間
控制作品和框架背景具有預(yù)期的顏色。
此外,由于框架在默認(rèn)情況下是可調(diào)整大小的,所以使用它可能會(huì)更好
wxScrolledWindow而不是wxPanel,
確??丶子谠L問(wèn),而不考慮框架
大小。但是,請(qǐng)考慮使用wxDialog而不是wxFrame是否會(huì)更好,在這種情況下,使用這樣的面板是不需要的,而且wxDialog還提供了其他好處,如創(chuàng)建專(zhuān)門(mén)的大小(例如,按鈕,具有其平臺(tái)正確的順序)。
wxFrame處理的事件wxEVT_SIZE:如果 frame剛好有一個(gè)子窗口,不計(jì)算狀態(tài)和工具欄,此子對(duì)象的大小被調(diào)整為整個(gè)框架客戶(hù)區(qū)。如果有兩個(gè)或兩個(gè)以上的窗口,它們應(yīng)該通過(guò)手動(dòng)處理wxEVT_SIZE或使用sizers;
wxEVT_MENU_HIGHLIGHT:
如果有的話,默認(rèn)實(shí)現(xiàn)顯示幫助字符串,與狀態(tài)欄第一個(gè)窗格中的選定項(xiàng)相關(guān)聯(lián)。
類(lèi)支持下面樣式
wxDEFAULT_FRAME_STYLE:
定義為wxMINIMIZE_BOX | wxMAXIMIZE_BOX | wxRESIZE_BORDER | wxSYSTEM_MENU | wxCAPTION | wxCLOSE_BOX | wxCLIP_CHILDREN。
wxICONIZE:
顯示圖標(biāo)化的幀(最小化)。僅Windows。
wxCAPTION:
把一個(gè)
畫(huà)框上的文字說(shuō)明。注意,此標(biāo)志是由
wxMINIMIZE_BOX, wxMAXIMIZE_BOX和wxCLOSE_BOX在大多數(shù)系統(tǒng)上作為
如果窗口沒(méi)有標(biāo)題欄,則無(wú)法顯示相應(yīng)的按鈕
所有人。也就是說(shuō),如果沒(méi)有指定wxCAPTION,這些樣式將是簡(jiǎn)單的
忽略了。
wxMINIMIZE:
和wxICONIZE一樣。僅Windows。
wxMINIMIZE_BOX:
在框架上顯示一個(gè)最小化框。
wxMAXIMIZE:
顯示大化的幀。僅適用于Windows和GTK+。
wxMAXIMIZE_BOX:
在幀上顯示一個(gè)大化框。注意,在wxGTK下也必須使用wxRESIZE_BORDER,否則此樣式將被忽略。
wxCLOSE_BOX:
在框架上顯示一個(gè)關(guān)閉框。
wxSTAY_ON_TOP:
保持在所有其他窗口之上,請(qǐng)參見(jiàn)wxFRAME_FLOAT_ON_PARENT。
wxSYSTEM_MENU:
顯示包含各種windows命令列表的系統(tǒng)菜單
在窗口標(biāo)題欄。不像wxMINIMIZE_BOX, wxMAXIMIZE_BOX和
wxCLOSE_BOX樣式這種樣式至少可以在沒(méi)有wxCAPTION的情況下使用
在Windows下,使系統(tǒng)菜單可用而不顯示它
這里是屏幕。但是,建議只一起使用
與wxCAPTION在所有平臺(tái)下的一致行為。
wxRESIZE_BORDER:
顯示窗口周?chē)烧{(diào)整大小的邊框。
wxFRAME_TOOL_WINDOW:
創(chuàng)建一個(gè)帶有小標(biāo)題欄的框架;該框架不會(huì)出現(xiàn)在Windows或GTK+下的任務(wù)欄中。
wxFRAME_NO_TASKBAR:
創(chuàng)建一個(gè)正常的幀,但它不顯示在任務(wù)欄中
在Windows或GTK+下(注意它將最小化到桌面窗口
在Windows下,這對(duì)用戶(hù)來(lái)說(shuō)可能很奇怪,因此它可能是
最好只使用這種樣式而不使用wxMINIMIZE_BOX樣式)。在wxGTK,
只有在窗口管理器支持時(shí)才尊重該標(biāo)志
_NET_WM_STATE_SKIP_TASKBAR提示。
wxFRAME_FLOAT_ON_PARENT:
幀總是在其父幀的頂部(不像wxSTAY_ON_TOP)。用這種樣式創(chuàng)建的幀必須有一個(gè)非null的父幀。
wxFRAME_SHAPED:
允許使用SetShape()方法改變具有這種樣式的窗口的形狀。
默認(rèn)的frame樣式是普通的,可調(diào)整大小的frame。要?jiǎng)?chuàng)建一個(gè)無(wú)法由用戶(hù)調(diào)整大小的框架,您可以使用以下方法
風(fēng)格組合:
wxDEFAULT_FRAME_STYLE & ~(wxRESIZE_BORDER | wxMAXIMIZE_BOX)
你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機(jī)房具備T級(jí)流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級(jí)服務(wù)器適合批量采購(gòu),新人活動(dòng)首月15元起,快前往官網(wǎng)查看詳情吧