12 Nisan 2014 Cumartesi

WinApi Mfc Form kullanımı

WinApi1MFCfotm kullanımı.rar















#include <windows.h>
#include "resource.h"

LRESULT CALLBACK WndProc (HWND hWnd, UINT message,WPARAM wParam, LPARAM lParam);

int WINAPI WinMain (HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPSTR lpCmdLine,
int iCmdShow)
{
WNDCLASS wc;
HWND hWnd,yavru;//degerler tanımlanıyor
HDC hDC;
HGLRC hRC;        
MSG msg;
BOOL bQuit = FALSE;
float theta = 0.0f;
wc.style = CS_OWNDC;
wc.lpfnWndProc = WndProc;
wc.cbClsExtra = 0;
wc.cbWndExtra = 0;
wc.hInstance = hInstance;
wc.hIcon = LoadIcon (NULL, IDI_APPLICATION);
wc.hCursor = LoadCursor (NULL, IDC_ARROW);
wc.hbrBackground = (HBRUSH) GetStockObject (WHITE_BRUSH);
wc.lpszMenuName = NULL;
wc.lpszClassName ="OpenGLTurk";
RegisterClass (&wc);
hWnd = CreateWindow ("OpenGLTurk","OpenGLTurk-Yasin Demirci",WS_CAPTION  |  WS_POPUPWINDOW | WS_VISIBLE | WS_OVERLAPPEDWINDOW ,30, 30, 1000,800,NULL, NULL, hInstance, NULL);
// mfc form (yavru) pencere degeri atanıyor 
yavru=CreateDialog(hInstance, MAKEINTRESOURCE(IDD_DIALOG1), hWnd,DLGPROC(WndProc));

ShowWindow (yavru, iCmdShow) ; // mfc pencerenizin gösterimi
     UpdateWindow (yavru) ; // mfc penceresinin guncellemesi
  /* mfc formu resource filesten bazı özelliklerini ayarlama yapmanız gerekmektedir aksi takdirde yanlış sonuclar alabilirsiniz örnegin
  properties özellikler alanından style özelligini CHILD yapmanızı tavsiye edebilirim border özelligindende formun yapısını degiştirebilirsiniz.*/
while (!bQuit)
{
if (PeekMessage (&msg, NULL, 0, 0, PM_REMOVE))
{
/* mesaj dağıtma*/
if (msg.message == WM_QUIT)
{
bQuit = TRUE;
}
else
{
TranslateMessage (&msg);
DispatchMessage (&msg);
}
}
else
{



}
}



DestroyWindow (hWnd);

return msg.wParam;
}
LRESULT CALLBACK WndProc (HWND hWnd, UINT message,WPARAM wParam, LPARAM lParam)
{

switch (message)
{
case WM_CREATE:
return 0;
case WM_CLOSE:
PostQuitMessage (0);
return 0;

case WM_DESTROY:
return 0;

case WM_KEYDOWN:
switch (wParam)
{
case VK_ESCAPE:
PostQuitMessage(0);
return 0;
}
return 0;

default:
return DefWindowProc (hWnd, message, wParam, lParam);
}
}



Hiç yorum yok:

Yorum Gönder