![]() |
TButton verschwindet von sich selbst
Liste der Anhänge anzeigen (Anzahl: 3)
Ich weiss jetzt nicht warum dies passiert, ist es vielleicht ein VCL Bug oder ist es mein Bug ? Wie auch immer mein TButton verschwiendet und kommt erst wieder vor wenn ich zB die Größe des Formular ändere ( via Mouse...).
Relevante Code dazu:
Delphi-Quellcode:
Danke.
procedure TmainForm.UpdateColumnsWidths(TheListView: TListView);
var i, w: Integer; begin w := TheListView.Width div TheListView.Columns.Count - 5; for i := 0 to TheListView.Columns.Count - 1 do begin TheListView.Column[i].Width := w; TheListView.Column[i].MinWidth := w; TheListView.Column[i].MaxWidth := w; end; end; //... procedure TmainForm.FormResize(Sender: TObject); begin UlazGroupBox.Height := Height div 2 - BottomPanel.Height; IzlazGroupBox.Height := UlazGroupBox.Height; UpdateColumnsWidths(IzlazListView); UpdateColumnsWidths(UlazListView); end; //-> weitere info IzlazListView.Align := alClient; IzlazListView.Parent := IzlazGroupBox; //-> weitere info UlazListView.Align := alClient; UlazListView.Parent := UlazGroupBox; //-> DAS Button -> StanjeButton.Parent := BottomPanel; // alle andere Properties sind unverändert EDIT: Das Fehler kann man reproduzieren indem man "Maximize" und dann wieder "Restore" klikt. |
Re: TButton verschwindet von sich selbst
Hallo!
Hast du ev. Anchors gesetzt? EDIT: Ja, hast du, ist aber nicht das Problem. Grüße Faux |
Re: TButton verschwindet von sich selbst
akLeft und akTop sind auf True gestellt, wie von Delphi IDE vorgeschlagen.
EDIT: Das Problem habe ich symptomatisch behandelt, indem ich folgendes hinzugefühgt habe:
Delphi-Quellcode:
Und es klappt. Ist aber nocht nicht DIE Lösung.
procedure TmainForm.WndProc(var Message: TMessage);
begin if Message.Msg = WM_SIZE then begin case Message.WParam of SIZE_RESTORED: begin StanjeButton.Width := StanjeButton.Width + 1; StanjeButton.Width := StanjeButton.Width - 1; end; end; end; inherited; end; |
Re: TButton verschwindet von sich selbst
|
Re: TButton verschwindet von sich selbst
Das einziege was mir hilft ist das:
Delphi-Quellcode:
Sonst kein Update, Refresh, Invalidate....
procedure TmainForm.WndProc(var Message: TMessage);
begin inherited; if (Message.Msg = WM_SIZE)and(Message.WParam = SIZE_RESTORED) then StanjeButton.Realign; end; |
Re: TButton verschwindet von sich selbst
Hallo,
sehr merkwürdig das Ganze. Wenn ich das Formular von unten her verkleinere, dann verschwindet das WinXP Layout, und das Fenster sieht aus wie ein Windows < XP Fenster. Komischerweise passiert das genau dann, sobald das Panel, auf dem sich der Button befindet, den unteren Rand der Caption des Fensters erreicht - noch nie gesehen soetwas. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:52 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz