AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

TButton verschwindet von sich selbst

Ein Thema von sniper_w · begonnen am 16. Apr 2006 · letzter Beitrag vom 16. Apr 2006
Antwort Antwort
Benutzerbild von sniper_w
sniper_w

Registriert seit: 11. Dez 2004
Ort: Wien, Österriech
893 Beiträge
 
Delphi 6 Enterprise
 
#1

TButton verschwindet von sich selbst

  Alt 16. Apr 2006, 21:58
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:
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
Danke.

EDIT:
Das Fehler kann man reproduzieren indem man "Maximize" und dann wieder "Restore" klikt.
Miniaturansicht angehängter Grafiken
falsch_167.jpg   richtig_784.jpg  
Angehängte Dateien
Dateityp: zip finansije_525.zip (252,8 KB, 7x aufgerufen)
Katura Haris
Es (ein gutes Wort) ist wie ein guter Baum, dessen Wurzel fest ist und dessen Zweige in den Himmel reichen.
  Mit Zitat antworten Zitat
Benutzerbild von faux
faux

Registriert seit: 18. Apr 2004
Ort: Linz
2.044 Beiträge
 
Turbo Delphi für Win32
 
#2

Re: TButton verschwindet von sich selbst

  Alt 16. Apr 2006, 22:14
Hallo!

Hast du ev. Anchors gesetzt?

EDIT: Ja, hast du, ist aber nicht das Problem.

Grüße
Faux
Faux Manuel
Wer weiß, dass er nichts weiß, weiß mehr, als der der nicht weiß, dass er nichts weiß.
GoTrillian
  Mit Zitat antworten Zitat
Benutzerbild von sniper_w
sniper_w

Registriert seit: 11. Dez 2004
Ort: Wien, Österriech
893 Beiträge
 
Delphi 6 Enterprise
 
#3

Re: TButton verschwindet von sich selbst

  Alt 16. Apr 2006, 22:17
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:
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;
Und es klappt. Ist aber nocht nicht DIE Lösung.
Katura Haris
Es (ein gutes Wort) ist wie ein guter Baum, dessen Wurzel fest ist und dessen Zweige in den Himmel reichen.
  Mit Zitat antworten Zitat
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#4

Re: TButton verschwindet von sich selbst

  Alt 16. Apr 2006, 22:20
Hi

Vielleicht hilft ja ein Delphi-Referenz durchsuchenRefresh, Delphi-Referenz durchsuchenRedraw oder Delphi-Referenz durchsuchenUpdate (oder was es da nochmals alles gab). Aber erklären kann ich mir das auch nicht.
  Mit Zitat antworten Zitat
Benutzerbild von sniper_w
sniper_w

Registriert seit: 11. Dez 2004
Ort: Wien, Österriech
893 Beiträge
 
Delphi 6 Enterprise
 
#5

Re: TButton verschwindet von sich selbst

  Alt 16. Apr 2006, 22:29
Das einziege was mir hilft ist das:
Delphi-Quellcode:
procedure TmainForm.WndProc(var Message: TMessage);
begin
  inherited;
  if (Message.Msg = WM_SIZE)and(Message.WParam = SIZE_RESTORED) then
    StanjeButton.Realign;
end;
Sonst kein Update, Refresh, Invalidate....
Katura Haris
Es (ein gutes Wort) ist wie ein guter Baum, dessen Wurzel fest ist und dessen Zweige in den Himmel reichen.
  Mit Zitat antworten Zitat
s-off
(Gast)

n/a Beiträge
 
#6

Re: TButton verschwindet von sich selbst

  Alt 16. Apr 2006, 22:38
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.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:28 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz