Forum: GUI-Design mit VCL / FireMonkey / Common Controls
by Volker Z.,
10. Jul 2013
Hallo,
Ich starte die Anwendung, ziehe das Fenster in der Breite größer, den Splitter nach rechts ziehen bis er in der Mitte des Formulars steht. Dann das Fenster in der Breite wieder verkleinern bis das Panel seine Minimalbreite erreicht - bis dahin geht alles gut. Verkleinere ich das Formular weiter, dann knallt es irgendwann.
Gruß
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
by Volker Z.,
10. Jul 2013
Hallo,
Sorry, da habe ich dann wohl zu viel hineininterpretiert.
Bei Deiner Lösung scheppert es aber mit einem Stackoverflow. Ich meine es müsste heißen:
if LeftClientWidth >= Panel2.Width then
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
by Volker Z.,
10. Jul 2013
Hallo,
ich würde eher auf etwas in dieser Richtung setzen:
procedure TForm1.FormCreate(Sender: TObject);
begin
// kannst Du natürlich auch im Objectinspector setzen
Splitter1.MinSize := 300;
Panel2.Width := Splitter1.MinSize
end;
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
by Volker Z.,
9. Jul 2013
Hallo,
ich würde mal die Eventhandler Splitter1MouseLeave und Splitter1MouseMove löschen, und es mit
procedure TForm1.Panel2Resize(Sender: TObject);
begin
if Panel2.Width > LeftClientWidth then
Panel2.Width := LeftClientWidth
end;