Thema: Delphi Fenster ausfahren

Einzelnen Beitrag anzeigen

TiGü

Registriert seit: 6. Apr 2011
Ort: Berlin
3.060 Beiträge
 
Delphi 10.4 Sydney
 
#4

AW: Fenster ausfahren

  Alt 7. Nov 2017, 08:58
Probiere mal kleinere Schrittweiten beim rausfahren:
MoveWindow(Prop.Panel, rc.left, rc.Top + 2, //<----

Zitat:
Wieder mal völliges fehlen der Auswertung der Rückgabewerte der Windowsfunktionen.
MoveWindow..
Habe noch nie Rückgabewerte für solche triviale Dinge definiert und ist auch nicht nötig.
Klar ist das trivial, aber so kannst du doch einfach mal die grundlegenden Fehlerquellen ausschließen, wie bspw. ungültiges Handle oder sowas.
Keine Angst, das wird dein Code auch nur um 2 Nanosekunden langsamer machen.

Zitat:
Wie ist es, wenn du hier mal TRUE schreibst?
Nein ich will kein neu zeichnen.
Hast du denn bRepaint = True einfach mal schnell ausprobiert oder magst du jetzt aus Dickköpfigkeit nicht mehr?
Wenn ich in einen kleinen Test das mal ausprobiere, sehe ich schon, dass ein Neuzeichnen nicht verkehrt wäre (siehe Bildanhang).

Delphi-Quellcode:
procedure TForm5.Panel1Click(Sender: TObject);
var
  bRepaint: BOOL;
begin
  bRepaint := True; //False
  Panel1.Caption := 'bRepaint is ' + BoolToStr(bRepaint, True);
  Win32Check(MoveWindow(Panel1.Handle, Panel1.Left + 10, Panel1.Top + 10, Panel1.Width + 10, Panel1.Height + 10, bRepaint));
end;
PS: rc und p sind keine guten Beispiele für sinnvolle Namensgebung.
Miniaturansicht angehängter Grafiken
movewindow.png  
  Mit Zitat antworten Zitat