最近WinAPIの勉強を始めました。チュートリアルの上位 10 件の検索結果を調べた後でも、ウィンドウごとに複数のコントロールのコードをどこに追加するのか、まだ混乱しています。たとえば、2 つ目のボタンを追加したい場合、どのようなコードをどこに配置しますか?
I の場合、コールバックにandを#define IDC_BUTTON WM_USER + 1
追加してから、次のように呼び出します。HINSTANCE hIns;
HWND hButton;
case WM_CREATE:
hIns=((LPCREATESTRUCT)lParam)->hInstance;
hButton=CreateWindow("Button","Click Me",WS_CHILD|WS_VISIBLE,70,60,150,30,hwnd,(HMENU)IDC_BUTTON,hIns,0);
break;
それは機能し、ボタンがウィンドウに表示されます。しかし、2 番目のものを追加しようとすると、名前を変更しても何も表示されません。
#define IDC_BUTTON2 WM_USER + 2
+
HINSTANCE hIns;
HWND hButton2;
case WM_CREATE:
hIns=((LPCREATESTRUCT)lParam)->hInstance;
hButton=CreateWindow("Button","Click Me",WS_CHILD|WS_VISIBLE,70,60,150,30,hwnd,(HMENU)IDC_BUTTON,hIns,0);
hButton2=CreateWindow("Second","Press here",WS_CHILD|WS_VISIBLE,170,160,250,130,hwnd,(HMENU)IDC_BUTTON2,hIns,0);
break;
最初のボタンは正常に表示されますが、2 番目のボタンはそうではありません (座標も異なります)。ここで何が間違っていますか?ありがとう!
編集:コード内のhIns2
をに置き換えました。hIns