以前、管理人さんの作ったサンプルをもとに作ってみました。
> ttp://hpcgi2.nifty.com/natupaji/bbs/patio.cgi?mode=past&no=299
とりあえず、動いているようですが、まったく自信ないので
間違っているところがあればフォローしていただけると助かります。
WindowsプログラムとDxLibの共用は比較的難易度が高いと思うので
勉強と言うのであれば、まずはどちらかに絞ったほうが良いかと思います。
#include "DxLib.h"
LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);
char szClassNme[] = "ウィンドウクラス・ネーム";
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPreInst, LPSTR lpszCmdLine, int nCmdShow)
{
// ウインドウの作成
HWND hWnd;
MSG msg;
WNDCLASS myProg;
if (!hPreInst) {
myProg.style =CS_HREDRAW | CS_VREDRAW;
myProg.lpfnWndProc =WndProc;
myProg.cbClsExtra =0;
myProg.cbWndExtra =0;
myProg.hInstance =hInstance;
myProg.hIcon =NULL;
myProg.hCursor =LoadCursor(NULL, IDC_ARROW);
myProg.hbrBackground =(HBRUSH)GetStockObject(WHITE_BRUSH);
myProg.lpszMenuName =NULL;
myProg.lpszClassName =szClassNme;
if (!RegisterClass(&myProg))
return FALSE;
}
hWnd = CreateWindow(szClassNme,
"猫でもわかるプログラミング",
WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT,
CW_USEDEFAULT,
CW_USEDEFAULT,
CW_USEDEFAULT,
NULL,
NULL,
hInstance,
NULL);
ShowWindow( hWnd, nCmdShow );
UpdateWindow( hWnd );
// 作成したウインドウをセット
ChangeWindowMode( TRUE );
SetUserWindow( hWnd );
SetHookWinProc( WndProc );
SetMouseDispFlag( TRUE );
if( DxLib_Init( ) < 0 ) return -1;
DrawPixel( 320 , 240 , GetColor(255, 255, 255) );
WaitKey( );
DxLib_End( );
return (msg.wParam);
}
LRESULT CALLBACK WndProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam)
{
switch (msg) {
case WM_DESTROY:
PostQuitMessage(0);
break;
default:
return 0;
}
return (0L);
}