0から始めるVisualStudio2022:ソフト開発塾

ダイアログボックス
まず初めに、ダイアログボックスのプログラムを作成してみることに
VisualStudio2022を起動して
新しいプロジェクトを選んで
C++の空のプロジェクトを選んで
プロジェクト名、場所、ソリューション名を
ソリューションとプロジェクトを同じディレクトリに配置を外して作成すると
ソリューションエクスプローラーはこんな感じです。
次に、メニューより
『プロジェクト』『リソースの追加』
「Dialog」で、「新規作成」ボタンを押す。
ダイアログを編集する画面が現れた。
ソリューションエクスプローラーはこんな感じで、
ヘッダーファイルに
rsource.h
リソースファイルに
Dialog000.rc
が追加された。
とりあえず、ダイアログは編集しないでそのままで。
リソースビューをみるとこんな感じ。
(リソースビューが見当たらない場合、ソリューションエクスプローラーの
リソースファイルのDialog000.rcをダブルクリック)
IDD_DIALOG1 を
プロパティで変更
IDD_DIALOG1から"DIALOGBOX"に(ダブルクォーテーションを両側につけて)
こんな感じで、
リソースビューはこんな感じになりました。
さて、次にソース
いつものように、
次に『プロジェクト』『新しい項目の追加』
C++を選んで、名前をdialog000.cppにして追加
ソースを書く
その前に、いつもの
WINDOWSの場合、リンクでエラーが出てないように
『プロジェクト』『プロパティ』の「リンカー」「システム」
サブシステムを「コンソール」から「Windows」に変える。
#include <Windows.h>
BOOL CALLBACK MyDlgProc(
    HWND hDlg,
    UINT msg,
    WPARAM wPara,
    LPARAM lPara
) {
    switch (msg) {
    case WM_COMMAND:
        switch (LOWORD(wPara)) {
        case IDOK:
            EndDialog(hDlg, IDOK);
            return TRUE;
        case IDCANCEL:
            EndDialog(hDlg, IDCANCEL);
            return TRUE;
        }
        return FALSE;
    }
    return FALSE;
}
int WINAPI WinMain(
    _In_ HINSTANCE hInstance,
    _In_opt_ HINSTANCE hPrevInstance,
    _In_ LPSTR     lpCmdLine,
    _In_ int       nCmdShow) {

    DialogBoxA(hInstance, "DIALOGBOX", NULL, (DLGPROC)MyDlgProc);

    return 0;
}
はい!出来上がり。
こんなの作って何になるだ?
これをひな型に、ダイアログにコントロールを貼り付けテストするなど
使い道は、無限。





Top