darkprodukt
Goto Top

Zweites Fenster registrieren und aufrufen

Guaten Abend,

ich beschäftige mich seit einigen Tagen mit der Win32 API und bin danke diesem sehr guten Tutorial auch schnell auf einen grünen Zweig gekommen. Meine Vorkenntnisse in C++ waren debei sehr hilfreich.

Da ich mit Visual Studio C++ 2010 SP1 Arbeite habe ich mit dem Tutorial den Startcode den mir das Programm anbietet (bei einem Win32 Projekt) verstanden und möchte darauf aufbauen.

Ich habe natürlich schon ein Projekt im Hinterkopf und dafür würde ich gerne ein zweites Fenster aufrufen, in dem man die Einstellungen des Programm einsehen und verändern kann.

Mein Problem ist jetzt wie ich das Fenster bei Windows registriere und es danach Aufrufe.
Das Fenster soll ähnlich sein wie das Einstellungsfenster im Firefox (nicht ganz so umfangreich).

Leider wird im Tutorial nur gezeigt wie man kleinere Einstellungen mithilfe einer Dialogbox auswertet, aber mir kahm so ein Fenster etwas zu komplex vor um es als Skript zu meinen ressurcen zu schreiben... natürlich mit genug aufwand ist alles möglich ;)

Meine bisherigen versuche z.B. eine weitere MyRegisterClass fuunktion zu schreiben, oder die registrierung des zweiten Fensters unter die erste in der Funktion, sind leider gescheitert.

MyRegisterClass:
ATOM MyRegisterClass(HINSTANCE hInstance)
{
	WNDCLASSEX wcex;

	wcex.cbSize = sizeof(WNDCLASSEX);

	wcex.style			= CS_HREDRAW | CS_VREDRAW;
	wcex.lpfnWndProc	= WndProc;
	wcex.cbClsExtra		= 0;
	wcex.cbWndExtra		= 0;
	wcex.hInstance		= hInstance;
	wcex.hIcon			= LoadIcon(hInstance, MAKEINTRESOURCE(IDI_WIN32API_TESTS));
	wcex.hCursor		= LoadCursor(NULL, IDC_ARROW);
	wcex.hbrBackground	= (HBRUSH)(COLOR_WINDOW+1);
	wcex.lpszMenuName	= MAKEINTRESOURCE(IDC_MENU_GERMAN);
	wcex.lpszClassName	= szWindowClass;
	wcex.hIconSm		= LoadIcon(wcex.hInstance, MAKEINTRESOURCE(IDI_SMALL));

	return RegisterClassEx(&wcex);
}

das zweite fenster habe ich (inspiriert von einigen google suchen) versucht so aufzrufen
	case WM_COMMAND:
		wmId    = LOWORD(wParam);
		wmEvent = HIWORD(wParam);
		// Menüauswahl bearbeiten:
		switch (wmId)
		{
		case IDM_CONFIGS:
			HWND hConfigBox;

			hConfigBox = CreateWindowEx(WS_EX_CONTEXTHELP, szConfigClass, szTitle, WS_OVERLAPPED, CW_USEDEFAULT, CW_USEDEFAULT, 600, 400, NULL, NULL, ((LPCREATESTRUCT) lParam)->hInstance, NULL);
			break;
aber leider erfolglos...

Das Forum hat mir bisher immer sehr gute dienste geleistet und ich möchte mich schoneimal bei diesem Forum und den Mitgliedern bedanken, dass es immer sehr offen und hilfsbereit ist.

Lg Darkprodukt

Content-Key: 218816

Url: https://administrator.de/contentid/218816

Printed on: April 23, 2024 at 11:04 o'clock

Member: Darkprodukt
Darkprodukt Jun 07, 2014 at 12:44:06 (UTC)
Goto Top
Hab gerade gesehen das dieser Beitrag immernoch offen ist...

Ich bin mitlerweile auf eine andere Sprache umgestiegen und die frage ist für mich nicht mehr von belang....


mfg

Darkprodukt