Problem mit Dialogbox
-
hallo zusammen.
ich habe mir in einer *.rc datei ein menüund eine dialogbox zusammen gestellt. das
menü funktioniert auch so weit. nun habe ich da im menü Hilfe->Info über... wenn man darauf klickt, soll die Dialogbox aufgehen. Geht sie aber leider nicht.Ich weiß einfach nicht warum. das menü geht ja.
wäre toll, wenn mir da jemand helfen könnte.hier mal meine resource.h
#define IDM_FILE_NEW 40001
#define IDM_FILE_OPEN 40002
#define IDM_FILE_SAVE 40003
#define IDM_FILE_SAVEAS 40004
#define IDM_APP_EXIT 40005
#define IDM_EDIT_UNDO 40006
#define IDM_EDIT_CUT 40007
#define IDM_EDIT_COPY 40008
#define IDM_EDIT_PASTE 40009
#define IDM_EDIT_CLEAR 40010
#define IDM_BKGND_WHITE 40011
#define IDM_BKGND_LTGRAY 40012
#define IDM_BKGND_GRAY 40013
#define IDM_BKGND_DKGRAY 40014
#define IDM_BKGND_BLACK 40015
#define IDM_TIMER_START 40016
#define IDM_TIMER_STOP 40017
#define IDM_APP_HELP 40018
#define IDM_APP_ABOUT 40019
#define IDC_STATIC -1hier mal die *.rc
//Microsoft Developer Studio generated resource script.
//#define APSTUDIO_READONLY_SYMBOLS
/////////////////////////////////////////////////////////////////////////////
//
// Generated from the TEXTINCLUDE 2 resource.
//
#include "resource.h"
#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/////////////////////////////////////////////////////////////////////////////
//
// Menu
//MENUNETZPLAN MENU DISCARDABLE
BEGIN
POPUP "&Datei"
BEGIN
MENUITEM "&NEU", IDM_FILE_NEW
MENUITEM "&Öffnen", IDM_FILE_OPEN
MENUITEM "&Speichern", IDM_FILE_SAVE
MENUITEM "Speichern &unter", IDM_FILE_SAVEAS
MENUITEM SEPARATOR
MENUITEM "B&eenden", IDM_APP_EXIT
END
POPUP "&Bearbeiten"
BEGIN
MENUITEM "&Widerrufen", IDM_EDIT_UNDO
MENUITEM SEPARATOR
MENUITEM "A&usschneiden", IDM_EDIT_CUT
MENUITEM "&Kopieren", IDM_EDIT_COPY
MENUITEM "E&infügen", IDM_EDIT_PASTE
MENUITEM "&Löschen", IDM_EDIT_CLEAR
END
POPUP "&Hintergrund"
BEGIN
MENUITEM "&Weiß", IDM_BKGND_WHITE, CHECKED
MENUITEM "&Hellgrau", IDM_BKGND_LTGRAY
MENUITEM "&Grau", IDM_BKGND_GRAY
MENUITEM "&Dunkelgrau", IDM_BKGND_DKGRAY
MENUITEM "&Schwarz", IDM_BKGND_BLACK
END
POPUP "&Timer"
BEGIN
MENUITEM "&Start", IDM_TIMER_START
MENUITEM "S&top", IDM_TIMER_STOP, GRAYED
END
POPUP "&Hilfe"
BEGIN
MENUITEM "&Hilfe...", IDM_APP_HELP
MENUITEM "Info über Netzplan...", IDM_APP_ABOUT
END
END#ifdef APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// TEXTINCLUDE
//1 TEXTINCLUDE DISCARDABLE
BEGIN
"resource.h\0"
END2 TEXTINCLUDE DISCARDABLE
BEGIN
"#include ""resource.h""\r\n"
"#include ""afxres.h""\r\n"
"\0"
END3 TEXTINCLUDE DISCARDABLE
BEGIN
"\r\n"
"\0"
END#endif // APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// Dialog
//ABOUTBOX DIALOG DISCARDABLE 0, 0, 330, 205
STYLE WS_CHILD
FONT 8, "MS Sans Serif"
BEGIN
PUSHBUTTON "OK",IDOK,60,171,65,15
PUSHBUTTON "Abbrechen",IDCANCEL,173,172,90,18
LTEXT "Info über Version 1.0",IDC_STATIC,51,39,244,15
LTEXT "(c) by Mustermann",IDC_STATIC,34,112,150,20
END/////////////////////////////////////////////////////////////////////////////
//
// DESIGNINFO
//#ifdef APSTUDIO_INVOKED
GUIDELINES DESIGNINFO DISCARDABLE
BEGIN
AboutBox, DIALOG
BEGIN
BOTTOMMARGIN, 16
END
END
#endif // APSTUDIO_INVOKED#endif // Deutsch (Deutschland) resources
/////////////////////////////////////////////////////////////////////////////#ifndef APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// Generated from the TEXTINCLUDE 3 resource.
///////////////////////////////////////////////////////////////////////////////
#endif // not APSTUDIO_INVOKEDun hier mal der code aus der *.cpp
case IDM_APP_HELP:
MessageBox(hWnd, TEXT("Hilfestellung noch nicht implementiert!"), "Hilfe", MB_ICONEXCLAMATION | MB_OK);
return 0;case IDM_APP_\1:
DialogBox(hInstance, TEXT("About"),hWnd, AboutDlgProc);
break;BOOL CALLBACK AboutDlgProc(HWND hDlg, UINT message,
WPARAM wParam, LPARAM lParam)
{
switch(message)
{
case WM_INITDIALOG:
return TRUE;case WM_COMMAND:
switch(LOWORD(wParam))
{
case IDOK:
case IDCANCEL:
EndDialog(hDlg, 0);
return TRUE;
}
break;
}
return FALSE;
}
-
Versuche es mal mit folgendem Code:
DialogBox(hInstance, MAKEINTRESOURCE(ABOUTBOX), hWnd, AboutDlgProc);Du Header, in dem du ABOUTBOX definiert hast, musst du dann in dieser .cpp-Datei auch noch einbinden - hab es komischerweise in deiner resource.h nicht gefunden

-
was muss ich denn dann noch in meine headerdatei eintragen? das kann doch in die resource.h dann.
-
Mich wundert, dass das bisher so ohne Probleme geschluckt wird...
Du musst wohl einfach dort noch "#define ABOUTBOX 40020" o.ä. einfügen - bin mir gerade aber auch nicht ganz sicher. Normalerweise hätte die IDE das schon machen sollen
-
so, habs jetzt,musste TEXT("ABOUTBOX") schreiben. hatte nur irgenwie verschiede Namen für die Dialogbox genommen
-
So,
das die Dialogbox geht ja nun auf, nur leiser funktioniert dann irgendwie gar nichts mehr. es lassen sich nirgends Button anklicken und die Dialogbox kann man auch nicht mehr schließen. ich uss die anwendung über den taskmanager killen.
irgendwie steige ich bei dem kram noch nicht wirklich durch.
ch dachte, dass das die dialogbox wie eine messagebox aufgeht, man ok klickt und dann ist sie wieder weg.
-
Wie sieht denn die dlgfunc der Aboutbox aus?