アプリケーションは必ずwxFrameかwxDialogの トップレベルウィンドウを持つ. 各フレームは幾つかのクラスのインスタンスを持つだろう.例えばwxPanel, wxSplitterWindow,その他のウィンドウやコントロール.
フレームはwxMenuBar,wxToolBar, ステータスライン, フレームがアイコン化されたときのアイコン(wxIcon)を 持つことが出来る.
wxPanelは,ユーザーと対話するためのコントロール (wxControlから継承されたクラス)を配置するのに使われる. コントロールにはwxButton,wxCheckBox, wxChoice, wxListBox, wxRadioBox, wxSlider等がある.
wxDialogのインスタンスもコントロールのために使われる.そしてダイアログ にはseparate frameを必要としないという利点がある.
ダイアログを作ってそこにいろいろ配置する変わりに,便利なコモンダイアログを利用する事が出来る. 例えばコモンダイアログには wxMessageDialog や wxFileDialog等がある.
An application must have a top-level wxFrame or wxDialog window. Each frame may contain one or more instances of classes such as wxPanel, wxSplitterWindow or other windows and controls.
A frame can have a wxMenuBar, a wxToolBar, a status line, and a wxIcon for when the frame is iconized.
A wxPanel is used to place controls (classes derived from wxControl) which are used for user interaction. Examples of controls are wxButton, wxCheckBox, wxChoice, wxListBox, wxRadioBox, wxSlider.
Instances of wxDialog can also be used for controls and they have the advantage of not requiring a separate frame.
Instead of creating a dialog box and populating it with items, it is possible to choose one of the convenient common dialog classes, such as wxMessageDialog and wxFileDialog.
イベントを処理するために,DECLARE_EVENT_TABLE マクロをウィンドウクラスの宣言部分に書き, BEGIN_EVENT_TABLE から END_EVENT_TABLE までのブロックを実装ファイルに書く. そしてこのブロックの中に,イベント(例:マウスクリック)をメンバ関数にマップするマクロを書く. それらは,デフォルトの(wxKeyEventや wxMouseEvent等のための)イベントハンドラをオーバーライドすることになる.
最近のアプリケーションは,オンラインでハイパーテキストを用いたヘルプシステムを持っている. これを実現するには,wxHelpと,wxHelpを制御するwxHelpControllerが 必要になる.
GUIアプリケーションも,グラフィック以外のこともしないといけない. リストやハッシュテーブルが欲しければ,wxList, wxStringList , wxHashMapがある. マルチプラットフォームなファイルを扱う関数群file functionsが必用だろう. パスのリストを保存し検索するのにはwxPathListが便利だ. 他のにも雑多な,OS関連やその他の関数がある.
Classes by Categoryにクラスの一覧がある.
To intercept events, you add a DECLARE_EVENT_TABLE macro to the window class declaration, and put a BEGIN_EVENT_TABLE ... END_EVENT_TABLE block in the implementation file. Between these macros, you add event macros which map the event (such as a mouse click) to a member function. These might override predefined event handlers such as for wxKeyEvent and wxMouseEvent.
Most modern applications will have an on-line, hypertext help system; for this, you need wxHelp and the wxHelpController class to control wxHelp.
GUI applications aren't all graphical wizardry. List and hash table needs are catered for by wxList, wxStringList and wxHashMap. You will undoubtedly need some platform-independent file functions, and you may find it handy to maintain and search a list of paths using wxPathList. There's a miscellany of operating system and other functions.
See also Classes by Category for a list of classes.