Registriert seit: 23. Jan 2008
3.686 Beiträge
Delphi 2007 Enterprise
|
AW: 1400 Error beim Erstellen eines Fensters via API
8. Aug 2011, 11:59
Fundstelle:
Delphi-Quellcode:
procedure TSForm.Show();
var msg : TMsg;
begin
with self.windowClass do // private und vom Typ TWndClass
begin
Style:= CS_HREDRAW or CS_VREDRAW;
lpfnWndProc:= @TSForm.WindowProcedure; // protected und mit stdcall versehen
cbClsExtra:= 0;
cbWndExtra:= 0;
hbrBackground:= COLOR_APPWORKSPACE;
lpszMenuName:= nil;
lpszClassName:= 'TestSWindow';
hInstance := hInstance; // <============================ hier so die Ecke :)
hIcon := LoadIcon(0, IDI_WINLOGO);
hCursor := LoadCursor(0, IDC_ARROW);
end;
if RegisterClass(self.windowClass) = 0 then
ShowMessage('Fensterklasse konnte nicht registriert werden ' + IntToStr(GetLastError));
self.hwnd {private HWND} := CreateWindow('TestSWindow', PChar(self.appName) {public und vom Typ String}, WS_CAPTION or WS_VISIBLE or WS_SYSMENU, (GetSystemMetrics(SM_CXSCREEN) - self.w {private, Integer und im Create auf 400 gesetzt}) div 2, (GetSystemMetrics(SM_CYSCREEN) - self.h{private, Integer und im Create auf 500 gesetzt}) div 2, self.w, self.h, 0, 0, hInstance, nil);
if self.hwnd = 0 then
ShowMessage('Fenster konnte nicht erzeugt werden ' + IntToStr(GetLastError));
// is ja egal ... komm ich nicht mal hin
ExitCode := msg.wParam;
end;
"When one person suffers from a delusion, it is called insanity. When a million people suffer from a delusion, it is called religion." (Richard Dawkins)
|
|
Zitat
|