Du bist nicht angemeldet.

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

1

07.03.2007, 16:20

API:Dialoge!! zum verzweifeln!

Hallo!
Diese verdammten Dialoge bringen mich noch auf die Palme.

Einfach mal die resource.rc

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
#include "resource.h"

ICC_ICON ICON "Mauritz.ico" 

Flo_Menu MENU DISCARDABLE 
BEGIN
    POPUP "Datei"
    BEGIN
        MENUITEM "Öffnen",                      Flo_Offnen
        MENUITEM "Beenden",                     Flo_END
    END
END


IDD_COMPILE DIALOGEX  20, 20, 150, 110
STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Listbox"
FONT 8, "MS Sans Serif"
BEGIN
    
    PUSHBUTTON      "&Abbrechen",IDC_ABORT,50,87,50,14,WS_GROUP
END


Hier die resource.h

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
10
#define ICC_ICON 101

#define Flo_Menu 102
#define Flo_END 103
#define Flo_Offnen 104


#define IDC_ABORT 105
#define IDC_OK 107
#define IDD_COMPILE 1006


Und ich einfach der auschnitt wo ich ihn aufrufe:

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
LRESULT CALLBACK WindowProcedure (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
{


    switch (message)                  /* handle the messages */
    {
           
        case WM_CREATE:
             SetMenu(hwnd, LoadMenu(GetModuleHandle(NULL), MAKEINTRESOURCE(Flo_Menu)));
             DialogBox( hInst,MAKEINTRESOURCE(IDD_COMPILE), hwnd,(DLGPROC)DlgProc );


             break;
        case WM_DESTROY:
            PostQuitMessage (0);       /* send a WM_QUIT to the message queue */
            break;
        default:                      /* for messages that we don't deal with */
            return DefWindowProc (hwnd, message, wParam, lParam);
    }

    return 0;
}


Und hier die DlgProc:

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
BOOL CALLBACK DlgProc (HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
{
switch(message)
{
    case WM_INITDIALOG:
        return TRUE;

    case WM_COMMAND:
        switch(LOWORD(wParam))
        {
        case IDC_ABORT:
            EndDialog(hDlg,0);
            return true;
        }
        break;
}
return 0;
}


Ich weiß die namen sind überhaupt nicht gut gegeben! aber soll ersteinmal nur klappen!!!!!!!!!!!!! Das wäre einfach mal gut!

Bitte helft mir!

Der Fehler liegt angeblich daran:

Quellcode

1
STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION


Wenn ich die rausnehme compilt er zwar aber dann kommt nix!


Gruß Flo :(

David Scherfgen

Administrator

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

2

07.03.2007, 16:26

Vielleicht sagst du uns auch mal, was für einen Fehler er meldet?!

3

07.03.2007, 16:30

Quellcode

1
19 H:\Programmieren\API\Modelconvater\resource.rc [Resource error] syntax error


Das sagt er :(

4

07.03.2007, 17:21

oh das thema haate ich schon angesprochen :oops: :oops:
sry! ich dachte ich hätte das gelöscht also das hier ist dann geschlossen ;)

5

07.03.2007, 20:31

hmm ... warum hast du einen C-Style Cast zu DLGPROC? Sag nicht, du hast den Code von www.winapi.net genommen ... naja ... der Returntype der Funktion ist nur in der aktuellen Definition etwas anders ...
Devil Entertainment :: Your education is our inspiration
Der Spieleprogrammierer :: Community Magazin
Merlin - A Legend awakes :: You are a dedicated C++ (DirectX) programmer and you have ability to work in a team? Contact us!
Siedler II.5 RttR :: The old settlers-style is comming back!

Also known as (D)Evil

Werbeanzeige