Windows Mobile ダイアログベースのMFCアプリケーション作成
ナビゲーションに移動
検索に移動
Windows Mobile ダイアログベースのMFCアプリケーション作成
Windows Mobile | Visual Studio 2005 |
プロジェクトの作成
新規作成-プロジェクト から、MFCスマートデバイスアプリケーションを選ぶ
ウィザードで、Windows Mobile 6 Standard SDKを選択
ダイアログベースで
タイトルを設定
アプリの作成
メニューの作成
新規にメニューを追加
もともと、存在している、IDR_MAINFRAME メニューはいくら修正しても、なにもおこらないので、新規にIDR_MENUを追加し、メニューを作成。ダイアログ cpp ファイルの、OnInitDialog 関数内の、dlgCommandBar.InsertMenuBarの引数を変更したら、メニューが表示されるようになった。
- BOOL CindcalcDlg::OnInitDialog()
- {
- CDialog::OnInitDialog();
- // このダイアログのアイコンを設定します。アプリケーションのメイン ウィンドウがダイアログでない場合、
- // Framework は、この設定を自動的に行います。
- SetIcon(m_hIcon, TRUE); // 大きいアイコンの設定
- SetIcon(m_hIcon, FALSE); // 小さいアイコンの設定
- if (!m_dlgCommandBar.Create(this) ||
- !m_dlgCommandBar.InsertMenuBar(IDR_MENU /* IDR_MAINFRAME */))
- {
- TRACE0("CommandBar の作成に失敗しました\n");
- return FALSE; // 作成できませんでした。
- :
実行させてみたところ
メニューの実装
メニューにイベントハンドラを追加する。
コンテキストメニューから、以下を選択。
ハンドラを追加する対象を選択する(ダイアログに追加する)
自動で関数が作成され、編集可能になるので、処理を追加する。
ダイアログのコントロールの実装
コントロールを貼り付けて、コンテキストメニューから、変数の追加を行う
ダイアログのメンバー変数として、コントロールを管理できるようになる
エンターキーの対応
ダイアログベースなので、Enterキーを押すと、画面が閉じてしまう。CDialog::PreTranslateMessage 関数をオーバーライドして、Enterキー押下時の処理をフックする。
ダイアログのプロパティから、オーバーライドアイコンを押下状態にし、PreTranslateMessageをオーバーライド
処理クラスを追加して起動
© 2006 矢木浩人