TSplitter/fi
│
Deutsch (de) │
English (en) │
suomi (fi) │
français (fr) │
русский (ru) │
TSplitter on komponentti joka voidaan sijoittaa paneeliin tai lomakkeelle pystysuoraan tai vaakasuoraan. Palkki erottaa alipaneelit toisistaan.
Komponenttia käytetään visuaalisena erottimena lomakkeen kahden puoliskon välillä ja sen ansiosta sovelluksen käyttäjä voi muuttaa komponentin kokoa joko pystysuoraan tai vaakasuoraan. Se löytyy komponenttipaletin Additional -välilehdeltä .
TSplitter voi työskennellä pohjimmiltaan kahdella eri tavalla: Align "linjaamalla" (Delphin tapaan) tai AnchorSidesin kautta (Tätä ominaisuutta ei ole Delphissä).
Splitter ja Align
TSplitter:ä voidaan käyttää monissa yksinkertaisissa asettelukohteissa, kuten esim. kahden komponentin välillä. Esimerkiksi kun tarvitaan vapaasti muokattavaa koon säätämistä muistion ja listboxin tmv. välillä.
Seuraava esimerkki osoittaa tämän.
Suunnitteluaikana
- Luo uusi lomake
- Pudota TMemo lomakkeelle (Klikkaa hiiren vasemmalla näppäimellä TMemo-kuvaketta komponenttivalikoissa valitaksesi sen ja sitten vasemmalla klikkaa lomaketta)
- Aseta komponenttimuokkaimessa Memo1:n Align ominaisuus arvoon alLeft.
- Pudota TSplitter lomakkeelle
- Oletuksena sen Align ominaisuus on jo arvossa alLeft.
- Pudota toinen TMemo lomakkeelle.
- Aseta komponenttimuokkaimessa Memo2:n Align ominaisuus arvoon alClient.
Ajonaikana
Voidaan samat toiminnot kuin yllä oleva myös suorittaa koodilla suunnitteluaikaisen / komponenttimuokkaimen käytön sijasta:
procedure TMainForm.FormCreate(Sender: TObject);
var
Memo1: TMemo;
Splitter1: TSplitter;
Memo2: TMemo;
begin
Memo1:=TMemo.Create(Self);
with Memo1 do begin
Name:='Memo1';
Parent:=Self;
Align:=alLeft;
end;
Splitter1:=TSplitter.Create(Self);
with Splitter1 do begin
Name:='Splitter1';
Parent:=Self;
Left:=1; // position it right of Memo1
Align:=alLeft;
end;
Memo2:=TMemo.Create(Self);
with Memo2 do begin
Name:='Memo2';
Parent:=Self;
Align:=alClient;
end;
end;
Splitter ja AnchorSides
Anchor sides allows more fine tuned layouts. Align fills all the space. AnchorSides allow to anchor controls to any other sibling control.
Suunnitteluaikana
- Luo uusi lomake
- Pudota TMemo lomakkeelle (Klikkaa hiiren vasemmalla näppäimellä TMemo-kuvaketta komponenttivalikoissa valitaksesi sen ja sitten vasemmalla klikkaa lomaketta)
- Aseta komponenttimuokkaimessa Memo1:n Align ominaisuus arvoon alLeft.
- Pudota TSplitter lomakkeelle
- Aseta sen Align ominaisuus arvoon alNone
- Valitse Memo1
- Näytä -> Anchor Editor
- Ankkuroi Memo1 oikea puoli Splitter1: een
- Pudota toinen TMemo lomakkeelle.
- Aseta komponenttimuokkaimessa Memo2:n Align ominaisuus arvoon alRight.
- ankkuroi Memo2: n vasen puoli Splitter1: een. Varmista, että ankkuroit Splitter1: n oikealle puolelle (Anchor-editorin painike Comboboxin alapuolella).
Ajonaikana
Voidaan samat toiminnot kuin yllä oleva myös suorittaa koodilla suunnitteluaikaisen / komponenttimuokkaimen käytön sijasta:
procedure TMainForm.FormCreate(Sender: TObject);
var
Memo1: TMemo;
Splitter1: TSplitter;
Memo2: TMemo;
begin
Memo1:=TMemo.Create(Self);
with Memo1 do begin
Name:='Memo1';
Parent:=Self;
Align:=alLeft;
end;
Splitter1:=TSplitter.Create(Self);
with Splitter1 do begin
Name:='Splitter1';
Parent:=Self;
Align:=alNone;
Left:=100; // some value
AnchorParallel(akBottom,0,Parent);
end;
Memo1.AnchorToNeighbour(akRight,0,Splitter1);
Memo2:=TMemo.Create(Self);
with Memo2 do begin
Name:='Memo2';
Parent:=Self;
Align:=alRight;
AnchorToNeighbour(akLeft,0,Splitter1);
end;
end;
Katso myös