Einzelnen Beitrag anzeigen

RedDust

Registriert seit: 26. Okt 2004
Ort: Könnern
96 Beiträge
 
Delphi 2005 Personal
 
#1

Formular, aber was bedeutet das ganze???

  Alt 30. Mai 2005, 09:11
Ich habe jetzt angefangen mit c++ zu programmieren und hätt hier nur mal eine Frage. Kann mir jemand diesen Code erklären?? Hab' schon etwas herausgefunden aber die Kernstellen fehlen mir noch.

Hier erstmal der Code:

Code:
#include <windows.h>
LRESULT CALLBACK WndProc(HWND,UINT,WPARAM,LPARAM);
HINSTANCE hInstGlobal;
int APIENTRY WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,LPSTR lpCmdLine,int nCmdShow)
{ hInstGlobal=hInstance;
  WNDCLASS WndClass;
  WndClass.style=0; WndClass.cbClsExtra=0; WndClass.cbWndExtra=0;
  WndClass.lpfnWndProc=WndProc; WndClass.hInstance=hInstance;
  WndClass.hbrBackground=(HBRUSH)(COLOR_WINDOW); // Hintergrundfarbe
  WndClass.hCursor=LoadCursor(NULL,IDC_ARROW);  // Cursor
  WndClass.hIcon=LoadIcon(NULL,IDI_APPLICATION); // Icon
  WndClass.lpszMenuName=0; WndClass.lpszClassName="WinProg";
  RegisterClass(&WndClass); HWND hWindow;
  hWindow=CreateWindow("WinProg"
  ,"Fenstertitel"            // Fenstertitel
  ,WS_OVERLAPPEDWINDOW
  ,100,0,400,300              // Left,Top,Width,Height
  ,NULL,NULL,hInstance,NULL);
  ShowWindow(hWindow, nCmdShow); UpdateWindow(hWindow);
  MSG Message;
  while (GetMessage(&Message,NULL,0,0)) { DispatchMessage(&Message); }
  return (Message.wParam);
}
LRESULT CALLBACK WndProc(HWND hWnd,UINT uiMessage,WPARAM wParam,LPARAM lParam)
{ switch(uiMessage)
  { case WM_CREATE: HWND hButton, hButtonExit;
      hButton= CreateWindow("BUTTON","OK",WS_CHILD|WS_VISIBLE|BS_PUSHBUTTON
         ,70,220,100,30     // Left,Top,Width,Height
         ,hWnd,(HMENU) 1,hInstGlobal,NULL);
      hButtonExit= CreateWindow("BUTTON","Exit",WS_CHILD|WS_VISIBLE|BS_PUSHBUTTON
         ,220,220,100,30     // Left,Top,Width,Height
         ,hWnd,(HMENU) 2,hInstGlobal,NULL);
    case WM_COMMAND:
      if (HIWORD(wParam)==BN_CLICKED)
      { if (LOWORD(wParam)==1)       // OK-Button
        { HDC hdc; char* str="Hello world!";
          hdc=GetDC(GetParent((HWND)lParam));
          SetBkColor(hdc,0xc0c0c0);SetTextColor(hdc,0xFF0000);
          TextOut(hdc,150,110,str,lstrlen(str));
        }     
        if (LOWORD(wParam)==2)       // Exit-Button
        { SendMessage(GetParent((HWND)lParam),WM_DESTROY,0,0);
        }
      }
      return 0;    
    case WM_DESTROY: PostQuitMessage(0); return 0;
    default: return DefWindowProc(hWnd,uiMessage,wParam,lParam);
  }
}
Das was nach der Compilierung rauskommt hab' ich euch mal angehängt.
Angehängte Dateien
Dateityp: exe form_967.exe (47,0 KB, 11x aufgerufen)
Mario Franze
  Mit Zitat antworten Zitat