Hallo zusammen
Wiedermal ne kleine Frage von mir.
Bin gerade daran die Dialogbox aus dem Buch einwenig umzubauen bzw am analysieren.
Jedoch habe ich das Problem, dass die Dialogbox und die Callback funktion garnet aufgerufen wird ( habs mit dem debugget überprüft )
Hat jemand nen kleinen Anstupser an was es liegen könnte, bzw was es noch braucht? Applikation läuft sauber durch aber der Returnwert der Dialogbox ist -1 und wird demnach ned angezeigt.
Ich dachte erst es gibt n Problem mit dem Handle, deshalb übergeb ich die HINSTANCE der Main.
Hier mal mein Code:
Dialogbox.h
|
C-/C++-Quelltext
|
1
2
3
|
#include<Windows.h>
int startD3DDialog( HINSTANCE hInstance );
|
Dialogbox.cpp
|
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
|
#include"Dialogbox.h"
#include"Allgemeines.h"
/* Handler für Nachrichten im Dialogfeld */
INT_PTR CALLBACK dialogProcess(HWND hDlg, unsigned int uiMsg, WPARAM WParam, LPARAM LParam)
{
switch(uiMsg)
{
case WM_INITDIALOG:
// Optionskästchen einstellen
CheckDlgButton(hDlg, IDC_D3DS_FULLSCREEN_MODE, BST_CHECKED);
CheckDlgButton(hDlg, IDC_D3DS_HARDWARE_TNL, BST_CHECKED);
break;
default:
return FALSE;
}
return TRUE;
}
int startD3DDialog(HINSTANCE hInstance)
{
return DialogBox(hInstance, MAKEINTRESOURCE(IDD_DIRECT3D_SETTINGS), NULL, dialogProcess);
}
|
Dialogboxtest.cpp
|
C-/C++-Quelltext
|
1
2
3
4
5
6
7
8
9
10
|
#include"Dialogbox.h"
int WINAPI WinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
char* pcCmdLine,
int iShowCmd)
{
int result = startD3DDialog(hInstance);
return 0;
}
|
Allgemeines.h
|
C-/C++-Quelltext
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
#define IDD_DIRECT3D_SETTINGS 901
#define IDC_D3DS_OK 9001
#define IDC_D3DS_CANCEL 9002
#define IDC_D3DS_ADAPTERS 9003
#define IDC_D3DS_DEVICE_TYPES 9004
#define IDC_D3DS_WINDOWED_MODE 9005
#define IDC_D3DS_FULLSCREEN_MODE 9006
#define IDC_D3DS_VIDEO_MODES 9007
#define IDC_D3DS_BACK_BUFFER_FORMATS 9008
#define IDC_D3DS_Z_STENCIL_BUFFER_FORMATS 9009
#define IDC_D3DS_MULTI_SAMPLING_TYPES 9010
#define IDC_D3DS_MULTI_SAMPLING_QUALITIES 9011
#define IDC_D3DS_HARDWARE_TNL 9012
#define IDC_D3DS_SOFTWARE_TNL 9014
#define IDC_D3DS_DESCRIPTION 9016
#define IDC_D3DS_SAVE 9015
#define IDC_D3DS_LOAD 9017
|