C++ Fenster



  • Hi ich habe folgenden Queltext, um ein Fenster zu erstellen. Jetzt möchte ich, dass wenn ich den Button mit den Inhalt Bestätigen drücke eine Messagebox erscheint. Was muss ich an den Quelltext ändern:
    PS: Kennt jemand ein gutes Tutoriel, für solche Anwendungen.

    #define ID_EDIT 1
    #define ID_TEXT 1
    #define ID_BUTTON 1

    #include <windows.h>

    HWND hEditbox;
    HWND hEditbox2;
    HWND hText1;
    HWND hText2;
    HWND hButton1;

    // Prototyp der Callback-Funktion
    LRESULT CALLBACK WindowProc (HWND hWnd, UINT message,
    WPARAM wParam, LPARAM lParam);

    // Hauptprogramm
    //
    int WINAPI WinMain (HINSTANCE hInst, HINSTANCE hPrevInst,
    LPSTR lpcmdline, int ncmdshow)
    {
    WNDCLASSEX windowclass; // Struktur für Fenstereigenschaften
    HWND hWnd; // Fenster-Handle
    MSG message; // Nachricht
    const char szClassName[] = "Erstes Fenster";
    windowclass.cbSize = sizeof (WNDCLASSEX);

    windowclass.style = CS_HREDRAW | CS_VREDRAW;
    windowclass.lpfnWndProc = WindowProc;
    windowclass.cbClsExtra = 0;
    windowclass.cbWndExtra = 0;
    windowclass.hInstance = hInst;
    windowclass.hIcon = LoadIcon (NULL, IDI_APPLICATION);
    windowclass.hIconSm = LoadIcon (NULL, IDI_APPLICATION);
    windowclass.hCursor = LoadCursor (NULL, IDC_ARROW);

    windowclass.hbrBackground = (HBRUSH)COLOR_BACKGROUND+1;

    windowclass.lpszMenuName = NULL;

    // Klassenname angeben
    windowclass.lpszClassName = szClassName;

    // Fensterklasse registrieren
    if (!RegisterClassEx (&windowclass) )
    return (0);

    // Das Fenster erzeugen
    hWnd = CreateWindowEx (NULL,
    szClassName,
    "HideOpen",
    WS_OVERLAPPEDWINDOW | WS_VISIBLE,
    100, 100,
    300, 500,
    NULL,
    NULL,
    hInst,
    NULL);
    hText1 = CreateWindow ("Static",
    " Welches Programm soll geöffnet werden:",
    WS_VISIBLE | WS_CHILD,
    0, 130,
    300, 20,
    hWnd,
    (HMENU)ID_TEXT,
    NULL,
    NULL);
    ,
    NULL,
    NULL);
    hButton1 = CreateWindow ("BUTTON",
    "BESTÄTIGEN",
    BS_PUSHBUTTON | WS_VISIBLE | WS_CHILD,
    90, 300,
    100, 20,
    hWnd,
    (HMENU)ID_EDIT,
    NULL,
    NULL);

    if (hWnd == NULL)
    return (0);
    }
    return (DefWindowProc (hWnd, message, wParam, lParam) );

    }



  • Hi

    Kennzeichne deinen C++ Code doch erst einmal mit den C/C++ Tags dann ist er schon viel schöner zu lesen.

    Und wo hast du deine WindowProc definiert; ich sehe nur die deklaration.

    Um eine Message-Box zu erstellen kannst du die Funktion MessageBox() verwenden(http://msdn.microsoft.com/en-us/library/ms645505.aspx).

    Und bist du dir sicher das dieser Code sich überhaupt kompilieren lässt??



  • Hier noch ein Tutorial(2. Treffer in Google bei suche nach WinApi)
    http://www.win-api.de/tutorials.php


Anmelden zum Antworten