Hi,
@neolithos: okay. Danke.
Zitat von
neolithos:
Delphi-Quellcode:
if aDsgnParams.dwStyles <> 0 then
fWndClass.style := fDsgnParams.dwWndStyles // <- Hier
Nein, das war schon richtig so!
dwWndStyles ist für das CreateWindow. Und
dwStyles ist für die Fensterklasse.
Zitat:
Ich würde TcnvDsgnParams genauer Dokumentieren und Definieren.
Ich hab da noch nicht ganz durchgesehen, welcher Parameter für was ist.
Klar, werde ich ja auch noch machen, aber ich habe gestern erst angefangen die Klasse zu schreiben.
Und da ich alles versucht habe, um ein Fenster anzuzeigen und es dennoch nicht geklappt hatte, habe ich halt gefragt.
@Nico:
Zitat von
NicoDE:
Du hast im Init() zwar den Klassennamen kopiert aber nicht den Rest (ist also nicht initialisiert).
Es fehlt also
self.fDsgnParams := aDsgnParams;
Jo, stimmt.
Hatte neolithos ja schon bereits geschrieben. Allerdings wird jetzt nichtmal mehr die MessageBox ausgegeben...
Zitat:
Off-Topic:
- Der Code-Style ist sehr gewöhnungsbedürftig.
In wie fern und was meinst soll ich besser machen?
Zitat:
- Warum steht dort 'do not use', wenn es in der Demo benutzt wird?
Weil ich einen kleinen Fehler gemacht hatte und ich somit den Klassennamen über das record zuweisen konnte. Deswegen auch der Parameter. Danach habe ich das geändert und jetzt habe ich es so verändert, dass das wieder über das record geht. Ich hatte jedoch noch nicht die Kommentare überarbeitet.
Zumal ich mit der Klasse erst gestern angefangen habe.
Zitat:
- Angeforderte Ressourcen werden nicht wieder freigegeben.
Noch.
Zitat:
- Fehlerbehandlung fehlt fast komplett...
Bis jetzt. Wie gesagt: ich habe gestern damit angefangen die Klasse zu schreiben und habe erstmal ein grobes Gerüst erstellt und deswegen ist noch nix drin. Ich bin ja dabei. Aber erstmal will ich ein Fenster sehen, damit ich weiß, dass alles funktioniert.
Zitat:
z.B. sollte bei GetMessage() der Rückgabewert -1 abgefangen werden!
Delphi-Quellcode:
while True do
case Integer(GetMessage(Msg, HWND(0), 0, 0)) of
0: // WM_QUIT
begin
// ExitCode := Msg.wParam;
Break;
end;
-1: // Error!
begin
// ExitCode := -1;
Break;
end;
else
TranslateMessage(Msg);
DispatchMessage(Msg);
end;
Okay, kann ich machen, aber das Problem wird damit ja nicht gelöst.
Chris