Użycie Splitter do zmiany szerokości Paneli

0

Witam,
używał ktoś komponentu Splitter, i chciałby się podzielić jak zmienić szerokość Panel1 oraz Panel2?
Szukam,próbuję ale nic mi nie wychodzi,a nie wydaje się to zbyt trudne.

Proszę o pomoc.

4

W załączniku masz testowy program (sprawdzany pod Delphi7);

Co trzeba zrobić - kładziesz dwa panele na czymś, co ma je grupować (np. formularz, inny panel itd.); Następnie lewemu panelowi ustawiasz Align na alLeft, splitterowi także na alLeft, a prawemu panelowi na alClient; Następnie ustawiasz wartość właściwość MinSize - właściwość ta określa minimalną szerokość paneli; Niestety w Delphi7 jest z tym problem, bo o ile prawy panel nie zmniejszy się do szerokości mniejszej niż ustalona, to lewy panel znika, jeśli splitter przesunie się za bardzo;

Rozwiązaniem jest ustawienie obu panelom minimalnej szerokości - czyli we właściwości Constraints ustawić trzeba wartość pola MinWidth; Tym bardziej jest to przydatne, jeśli oba panele (lewy i prawy) będą miały różną minimalną szerokość;

To tyle - pozostaje jeszcze ustawić odpowiednią wartość we właściwości ResizeStyle i gotowe; Ja wybrałem do testowego programu wartość rsUpdate, która sprawia, że podczas przesuwania splittera, zawartość paneli jest od razu aktualizowana;

Czyli podsumowując - wszystko można wyklikać, bez pisania kodu.

0

@furious programming Dziękuje!!

1 użytkowników online, w tym zalogowanych: 0, gości: 1