Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!
Werbeanzeige
Zitat von »"TrikkieMikkie"«
@TrommlBomml: Das Problem ist, daß sein Programm auf diesen einen Menüpunkt nicht reagieren will.
C-/C++-Quelltext |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 |
// Mein Windows // // #include <windows.h> #include "resource.h" #define ID_LIST 1 #define ID_GROUPBOX 02 #define ID_BUTTONDEL 01 #define ID_STATIC 03 HINSTANCE hInst; WNDPROC id; // Prototyp LRESULT CALLBACK WndProc (HWND, UINT, WPARAM, LPARAM); LRESULT CALLBACK ButtonProc (HWND, UINT, WPARAM, LPARAM); // Hauptprogramm int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR szCmdLine, int iCmdShow) { // Varaiblen static TCHAR szAppName[] = TEXT ("André sein Fenster") ; HWND hwnd ; MSG msg ; HACCEL hAccel; WNDCLASS wndclass ; // Fensterstruktur ausfüllen wndclass.style = CS_HREDRAW | CS_VREDRAW ; wndclass.lpfnWndProc = WndProc ; wndclass.cbClsExtra = 0 ; wndclass.cbWndExtra = 0 ; wndclass.hInstance = hInstance ; wndclass.hIcon = LoadIcon (hInstance, MAKEINTRESOURCE(IDI_ICON)) ; wndclass.hCursor = LoadCursor (hInstance, MAKEINTRESOURCE(IDC_CURSOR)) ; wndclass.hbrBackground = (HBRUSH) GetStockObject (WHITE_BRUSH) ; wndclass.lpszMenuName = MAKEINTRESOURCE(MyMenu); wndclass.lpszClassName = szAppName ; // Fenster rgistrieren if (!RegisterClass (&wndclass)) { // UNICODE-Compilierung ist die einzige realistische Fehlermöglichkeit MessageBox (NULL, TEXT ("Programm arbeitet mit Unicode und setzt Windows NT voraus!"), szAppName, MB_ICONERROR) ; return 0 ; } hInst = hInstance; // Fenster erzeugen hwnd = CreateWindow (szAppName, TEXT ("André sein Fenster"), WS_OVERLAPPEDWINDOW, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, NULL, NULL, hInstance, NULL) ; ShowWindow (hwnd, iCmdShow) ; UpdateWindow (hwnd) ; hAccel = LoadAccelerators(hInstance, MAKEINTRESOURCE(Accel)); while (GetMessage (&msg, NULL, 0, 0)) { if(!TranslateAccelerator(hwnd, hAccel, &msg)) { TranslateMessage (&msg) ; DispatchMessage (&msg) ; } } return msg.wParam ; } // Nachrichtenfunktion LRESULT CALLBACK WndProc (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) { // Variablen static int cxClient, cyClient ; HDC hdc; HWND hwndList; HINSTANCE hInstance; HWND hwndButtonDel; HWND hwndStatic; PAINTSTRUCT ps; HMENU hMenu; // Verschiedene Nachrichten auswerten switch (message) { case WM_CREATE: hdc = GetDC(hwnd); hInstance = ((LPCREATESTRUCT) lParam)->hInstance; hwndStatic = CreateWindow("static", NULL, WS_VISIBLE | WS_BORDER | SS_GRAYFRAME, 80, 80, 80, 80, hwnd, (HMENU) ID_STATIC, ((LPCREATESTRUCT) lParam)->hInstance, NULL); hwndList = CreateWindow(TEXT("listbox"), NULL, WS_CHILD | WS_BORDER | WS_VSCROLL | WS_VISIBLE | LBS_STANDARD, 70, 70, 90, 20, hwnd, (HMENU) ID_LIST, ((LPCREATESTRUCT) lParam)->hInstance, NULL); SendMessage(hwndList, LB_ADDSTRING, 0, (LPARAM) "Hallo!"); SendMessage(hwndList, LB_ADDSTRING, 0, (LPARAM) "C++"); SendMessage(hwndList, LB_ADDSTRING, 0, (LPARAM) "Windows"); SendMessage(hwndList, LB_ADDSTRING, 0, (LPARAM) "XP/Vista"); hwndButtonDel = CreateWindow(TEXT("button"), TEXT("Alles Löschen!"), WS_CHILD | WS_VISIBLE | BS_DEFPUSHBUTTON, 150, 150, 150,150, hwnd, (HMENU) ID_BUTTONDEL, ((LPCREATESTRUCT) lParam)->hInstance, NULL); id = (WNDPROC) SetWindowLong(hwndButtonDel, GWL_WNDPROC, (LONG) ButtonProc); ReleaseDC(hwnd, hdc); return 0; case WM_SIZE: cxClient = LOWORD (lParam) ; cyClient = HIWORD (lParam) ; return 0 ; case WM_COMMAND: hMenu = GetMenu(hwnd); switch(LOWORD(wParam)) { case ID_DATEI_BEENDEN: SendMessage(hwnd, WM_CLOSE, 0, 0); case ID_HILFE_HALLO: SendMessage(hwnd, WM_CLOSE, 0, 0); case 2: MessageBox(hwnd, "", "", MB_OK); } case WM_PAINT: hdc = BeginPaint(hwnd, &ps); EndPaint (hwnd, &ps) ; return 0; case WM_DESTROY: PostQuitMessage (0) ; return 0 ; } return DefWindowProc (hwnd, message, wParam, lParam) ; } LRESULT CALLBACK ButtonProc (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) { switch(message) { case WM_KEYDOWN: MessageBox(hwnd, "FUNKTIONIERT", "INFO!", MB_OK); } return CallWindowProc (id, hwnd, message, wParam, lParam); } |
C-/C++-Quelltext |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 |
//Microsoft Developer Studio generated resource script. // #include "resource.h" #define APSTUDIO_READONLY_SYMBOLS ///////////////////////////////////////////////////////////////////////////// // // Generated from the TEXTINCLUDE 2 resource. // #include "afxres.h" ///////////////////////////////////////////////////////////////////////////// #undef APSTUDIO_READONLY_SYMBOLS ///////////////////////////////////////////////////////////////////////////// // Deutsch (Deutschland) resources #if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_DEU) #ifdef _WIN32 LANGUAGE LANG_GERMAN, SUBLANG_GERMAN #pragma code_page(1252) #endif //_WIN32 #ifdef APSTUDIO_INVOKED ///////////////////////////////////////////////////////////////////////////// // // TEXTINCLUDE // 1 TEXTINCLUDE DISCARDABLE BEGIN "resource.h\0" END 2 TEXTINCLUDE DISCARDABLE BEGIN "#include ""afxres.h""\r\n" "\0" END 3 TEXTINCLUDE DISCARDABLE BEGIN "\r\n" "\0" END #endif // APSTUDIO_INVOKED ///////////////////////////////////////////////////////////////////////////// // // Icon // // Icon with lowest ID value placed first to ensure application icon // remains consistent on all systems. IDI_ICON ICON DISCARDABLE "windows.ico" ///////////////////////////////////////////////////////////////////////////// // // Cursor // IDC_CURSOR CURSOR DISCARDABLE "windowscursor.cur" ///////////////////////////////////////////////////////////////////////////// // // Menu // MyMenu MENU DISCARDABLE BEGIN POPUP "&Datei" BEGIN MENUITEM "Beenden", ID_DATEI_BEENDEN, INACTIVE END MENUITEM "", 65535 POPUP "&Hilfe" BEGIN MENUITEM "hallo", ID_HILFE_HALLO END END ///////////////////////////////////////////////////////////////////////////// // // Dialog // Hallo DIALOG DISCARDABLE 0, 0, 203, 137 STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU CAPTION "André" FONT 8, "MS Sans Serif" BEGIN CONTROL "Tab1",IDC_TAB1,"SysTabControl32",WS_GROUP,25,25,143,105 END ///////////////////////////////////////////////////////////////////////////// // // DESIGNINFO // #ifdef APSTUDIO_INVOKED GUIDELINES DESIGNINFO DISCARDABLE BEGIN Hallo, DIALOG BEGIN LEFTMARGIN, 7 RIGHTMARGIN, 196 TOPMARGIN, 19 BOTTOMMARGIN, 130 END END #endif // APSTUDIO_INVOKED ///////////////////////////////////////////////////////////////////////////// // // Accelerator // Accel ACCELERATORS DISCARDABLE BEGIN "D", 2, VIRTKEY, NOINVERT END #endif // Deutsch (Deutschland) resources ///////////////////////////////////////////////////////////////////////////// #ifndef APSTUDIO_INVOKED ///////////////////////////////////////////////////////////////////////////// // // Generated from the TEXTINCLUDE 3 resource. // ///////////////////////////////////////////////////////////////////////////// #endif // not APSTUDIO_INVOKED |
C-/C++-Quelltext |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
//{{NO_DEPENDENCIES}} // Microsoft Developer Studio generated include file. // Used by windows.rc // #define IDI_ICON 101 #define IDC_CURSOR 102 #define MyMenu 104 #define Accel 107 #define Hallo 1002 #define IDC_TAB1 1012 #define IDM_DATEI_BEENDEN 40002 #define ID_DATEI_BEENDEN 40002 #define ID_HILFE_HALLO 40003 // Next default values for new objects // #ifdef APSTUDIO_INVOKED #ifndef APSTUDIO_READONLY_SYMBOLS #define _APS_NEXT_RESOURCE_VALUE 108 #define _APS_NEXT_COMMAND_VALUE 40004 #define _APS_NEXT_CONTROL_VALUE 1013 #define _APS_NEXT_SYMED_VALUE 101 #endif #endif |
C-/C++-Quelltext |
|
1 2 |
#define IDM_DATEI_BEENDEN 40002 #define ID_DATEI_BEENDEN 40002 |
Zitat von »"TrikkieMikkie"«
Hat einer der Compiler (RC, C++) nicht gemeckert wegen den IDs?
Werbeanzeige