Einzelnen Beitrag anzeigen

DualCoreCpu
(Gast)

n/a Beiträge
 
#3

AW: Warum werden Regionen in meinem Programm nicht gezeichnet!

  Alt 6. Feb 2018, 11:33
Sicher, dass dein Klee nicht gezeichnet wird?
Ja sicher! Leider!

Zitat:
Delphi-Quellcode:
  while GetMessage(msg,0,0,0) do
  begin
    TranslateMessage(msg);
    DispatchMessage(msg);
  end;
Zitat:
Oder könnte es nicht auch sein, dass sich dein Programm fast sofort wieder beendet?
Wieso das? Wird nicht das Programm erst durch PostQuitmessage in der WM_DESTROY Message wirklich beendet?

Außerdem ist nach Programmsatart mein Anwendungsfenster, in dem das Kleeblatt gezeichnet werden soll, sichtbar. Nur bleibt der Hintergrund weiß. Kein Kleeblatt!

Das Fenster wird mit CreateWindow() erzeugt, danach mit ShowWindow() gezeichnet, UpdateWindow() zeichnet den Clientbereich, dann erst kommt die Nachrichtenschleife. Wieso sollte sich da mein Programm vor dem Zeichnen verabschieden?

Dem Fenster wird im WndClass Record die Window-Prozedur übergeben. Die dann innerhalb der Nachrichtenschleife ausgeführt wird. So wie ich die Funktion ShowWindow verstanden habe, sendet die eine WM_PAINT Message. So dürfte doch WM_DESTROY erst mit Klick auf den Schließen-Button rechts oben auf der Titelleiste oder mit Alt+F4 oder mit Schließen-Auswahl im Systemmenü abgesendet werden?

So muss mein Fehler eine andere Ursache haben. Aber welche?

.


.

Geändert von DualCoreCpu ( 6. Feb 2018 um 11:42 Uhr)
  Mit Zitat antworten Zitat