wxWidgets随笔(10)-wxApp类
當(dāng)wxUSE_GUI=1時(shí),wxApp類(lèi)表示應(yīng)用程序本身。
除了wxAppConsole提供的功能外,它還跟蹤頂部窗口(請(qǐng)參閱SetTopWindow())并增加對(duì)視頻模式的支持(請(qǐng)參閱SetVideoMode())。
一般來(lái)說(shuō),只有g(shù)ui的應(yīng)用程序范圍的設(shè)置可以從wxApp(或從wxSystemSettings或wxSystemOptions類(lèi))訪問(wèn)。
該類(lèi)發(fā)出的事件
這個(gè)類(lèi)發(fā)出的事件宏:
EVT_QUERY_END_SESSION(函數(shù)):
處理一個(gè)查詢結(jié)束會(huì)話事件,提供成員函數(shù)。可查閱wxCloseEvent。
EVT_END_SESSION(函數(shù)):
處理結(jié)束會(huì)話事件,提供成員函數(shù)。可查閱wxCloseEvent。
EVT_ACTIVATE_APP(函數(shù)):
處理一個(gè)wxEVT_ACTIVATE_APP事件。可查閱wxActivateEvent。
EVT_HIBERNATE(函數(shù)):
處理hibernate事件。可查閱wxActivateEvent。
EVT_DIALUP_CONNECTED(函數(shù)):
與網(wǎng)絡(luò)建立了連接。可查閱wxDialUpEvent。
EVT_DIALUP_DISCONNECTED(函數(shù)):
與網(wǎng)絡(luò)的連接丟失了。可查閱wxDialUpEvent。
EVT_IDLE(函數(shù)):
處理一個(gè)wxEVT_IDLE事件。可查閱wxIdleEvent。
wxApp ()
構(gòu)造函數(shù)。
virtual ~ wxApp ()
析構(gòu)函數(shù)。
virtual wxVideoMode GetDisplayMode()常量
獲取使用的顯示模式。
bool GetExitOnFrameDelete()常量
如果應(yīng)用程序?qū)⒃趧h除頂級(jí)框架時(shí)退出,則返回true。
GetLayoutDirection()常量
返回當(dāng)前語(yǔ)言環(huán)境的布局方向,如果未知,則返回wxLayout_Default。
bool GetUseBestVisual () const
如果應(yīng)用程序?qū)⒃谥С植煌曈X(jué)效果的系統(tǒng)上使用最好的視覺(jué)效果,則返回true,否則返回false。
virtual wxWindow * GetTopWindow() const
返回指向頂部窗口的指針。
virtual bool IsActive() const
如果應(yīng)用程序是活動(dòng)的,即如果它的一個(gè)窗口當(dāng)前在前臺(tái),則返回true。
virtual bool SafeYield (wxWindow *win,bool onlyIfNeeded)
這個(gè)函數(shù)類(lèi)似于wxYield(),只是它在調(diào)用wxAppConsole::Yield之前禁用所有程序窗口的用戶輸入,然后重新啟用它。
virtual bool SafeYieldForwxWindow *win,long eventsToProcess)
其工作原理類(lèi)似于SafeYield(),只不過(guò)它允許調(diào)用者指定要處理的事件掩碼。
bool ProcessMessage (WXMSG *msg)
僅用于處理消息的窗口函數(shù)。
virtual bool SetDisplayMode(const wxVideoMode &info)
設(shè)置顯示模式使用。
void SetExitOnFrameDelete (bool flag)
允許程序員指定在刪除頂層框架時(shí)應(yīng)用程序是否退出。
virtual bool SetNativeTheme (const wxString &theme)
允許在運(yùn)行時(shí)切換UI環(huán)境主題。
void SetTopWindow (wxWindow *window)
設(shè)置“頂部”窗口。
void SetUseBestVisual (bool flag, bool forceTrueColour=false)
允許程序員指定應(yīng)用程序是否將在同一顯示上支持多個(gè)可視化的系統(tǒng)上使用最佳可視化。
Mac-specific功能
virtual void MacNewFile ()
這是對(duì)蘋(píng)果公司“開(kāi)放應(yīng)用”事件的回應(yīng)。
virtual void MacOpenFiles (const wxArrayString &fileNames)
響應(yīng)Cocoa的openFiles消息或Carbon的“open-document”Apple事件時(shí)調(diào)用。
virtual void MacOpenFile (const wxString &fileName)
這是對(duì)蘋(píng)果公司“開(kāi)放文檔”事件的回應(yīng)。
virtual void MacOpenURL (const wxString &url)
在響應(yīng)“get-url”蘋(píng)果事件時(shí)調(diào)用。
virtual void MacPrintFile (const wxString &fileName)
在響應(yīng)“打印文檔”蘋(píng)果事件時(shí)調(diào)用。
virtual void MacReopenApp ()
響應(yīng)蘋(píng)果公司的“重新開(kāi)放應(yīng)用程序”事件。
virtual bool OSXIsGUIApplication ()
可能被覆蓋,以表明該應(yīng)用程序不是OS x下的前臺(tái)GUI應(yīng)用程序。
virtual bool wxAppConsole::OnInit ( )
這必須由應(yīng)用程序提供,通常會(huì)創(chuàng)建應(yīng)用程序的主窗口,也可以調(diào)用SetTopWindow()。
如果函數(shù)返回true,您可以使用OnExit()清除這里初始化的任何內(nèi)容。
注意,如果希望使用wxWidgets提供的命令行處理,必須調(diào)用派生類(lèi)OnInit()中的基類(lèi)版本。
返回true繼續(xù)處理,返回false立即退出應(yīng)用程序。
總結(jié)
以上是生活随笔為你收集整理的wxWidgets随笔(10)-wxApp类的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: js遍历对象、遍历数组、js数组方法大全
- 下一篇: wxWidgets随笔(11)-wxFr