TSplitter/fi

From Free Pascal wiki

Deutsch (de) English (en) suomi (fi) français (fr) русский (ru)

TSplitter tsplitter.png 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

  1. Luo uusi lomake
  2. Pudota TMemo lomakkeelle (Klikkaa hiiren vasemmalla näppäimellä TMemo-kuvaketta komponenttivalikoissa valitaksesi sen ja sitten vasemmalla klikkaa lomaketta)
  3. Aseta komponenttimuokkaimessa Memo1:n Align ominaisuus arvoon alLeft.
  4. Pudota TSplitter lomakkeelle
  5. Oletuksena sen Align ominaisuus on jo arvossa alLeft.
  6. Pudota toinen TMemo lomakkeelle.
  7. 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

AnchorSides sallii hienosäädetyt asettelut. Kohdistus täyttää kaiken tilan. AnchorSides antaa ankkuroida ohjaimet mihin tahansa muun sisaruksen hallintaan.

Suunnitteluaikana

  1. Luo uusi lomake
  2. Pudota TMemo lomakkeelle (Klikkaa hiiren vasemmalla näppäimellä TMemo-kuvaketta komponenttivalikoissa valitaksesi sen ja sitten vasemmalla klikkaa lomaketta)
  3. Aseta komponenttimuokkaimessa Memo1:n Align ominaisuus arvoon alLeft.
  4. Pudota TSplitter lomakkeelle
  5. Aseta sen Align ominaisuus arvoon alNone
  6. Valitse Memo1
  7. Näytä -> Anchor Editor
  8. Ankkuroi Memo1 oikea puoli Splitter1: een
  9. Pudota toinen TMemo lomakkeelle.
  10. Aseta komponenttimuokkaimessa Memo2:n Align ominaisuus arvoon alRight.
  11. 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


LCL Components
Component Tab Components
Standard TMainMenu • TPopupMenu • TButton • TLabel • TEdit • TMemo • TToggleBox • TCheckBox • TRadioButton • TListBox • TComboBox • TScrollBar • TGroupBox • TRadioGroup • TCheckGroup • TPanel • TFrame • TActionList
Additional TBitBtn • TSpeedButton • TStaticText • TImage • TShape • TBevel • TPaintBox • TNotebook • TLabeledEdit • TSplitter • TTrayIcon • TControlBar • TFlowPanel • TMaskEdit • TCheckListBox • TScrollBox • TApplicationProperties • TStringGrid • TDrawGrid • TPairSplitter • TColorBox • TColorListBox • TValueListEditor
Common Controls TTrackBar • TProgressBar • TTreeView • TListView • TStatusBar • TToolBar • TCoolBar • TUpDown • TPageControl • TTabControl • THeaderControl • TImageList • TPopupNotifier • TDateTimePicker
Dialogs TOpenDialog • TSaveDialog • TSelectDirectoryDialog • TColorDialog • TFontDialog • TFindDialog • TReplaceDialog • TOpenPictureDialog • TSavePictureDialog • TCalendarDialog • TCalculatorDialog • TPrinterSetupDialog • TPrintDialog • TPageSetupDialog • TTaskDialog
Data Controls TDBNavigator • TDBText • TDBEdit • TDBMemo • TDBImage • TDBListBox • TDBLookupListBox • TDBComboBox • TDBLookupComboBox • TDBCheckBox • TDBRadioGroup • TDBCalendar • TDBGroupBox • TDBGrid • TDBDateTimePicker
Data Access TDataSource • TBufDataset • TMemDataset • TSdfDataSet • TFixedFormatDataSet • TDbf
System TTimer • TIdleTimer • TLazComponentQueue • THTMLHelpDatabase • THTMLBrowserHelpViewer • TAsyncProcess • TProcessUTF8 • TProcess • TSimpleIPCClient • TSimpleIPCServer • TXMLConfig • TEventLog • TServiceManager • TCHMHelpDatabase • TLHelpConnector
Misc TColorButton • TSpinEdit • TFloatSpinEdit • TArrow • TCalendar • TEditButton • TFileNameEdit • TDirectoryEdit • TDateEdit • TTimeEdit • TCalcEdit • TFileListBox • TFilterComboBox • TComboBoxEx • TCheckComboBox • TButtonPanel • TShellTreeView • TShellListView • TXMLPropStorage • TINIPropStorage • TIDEDialogLayoutStorage • TMRUManager • TStrHolder
LazControls TCheckBoxThemed • TDividerBevel • TExtendedNotebook • TListFilterEdit • TListViewFilterEdit • TLvlGraphControl • TShortPathEdit • TSpinEditEx • TFloatSpinEditEx • TTreeFilterEdit • TExtendedTabControl •
RTTI TTIEdit • TTIComboBox • TTIButton • TTICheckBox • TTILabel • TTIGroupBox • TTIRadioGroup • TTICheckGroup • TTICheckListBox • TTIListBox • TTIMemo • TTICalendar • TTIImage • TTIFloatSpinEdit • TTISpinEdit • TTITrackBar • TTIProgressBar • TTIMaskEdit • TTIColorButton • TMultiPropertyLink • TTIPropertyGrid • TTIGrid
SQLdb TSQLQuery • TSQLTransaction • TSQLScript • TSQLConnector • TMSSQLConnection • TSybaseConnection • TPQConnection • TPQTEventMonitor • TOracleConnection • TODBCConnection • TMySQL40Connection • TMySQL41Connection • TMySQL50Connection • TMySQL51Connection • TMySQL55Connection • TMySQL56Connection • TSQLite3Connection • TIBConnection • TFBAdmin • TFBEventMonitor • TSQLDBLibraryLoader
Pascal Script TPSScript • TPSScriptDebugger • TPSDllPlugin • TPSImport_Classes • TPSImport_DateUtils • TPSImport_ComObj • TPSImport_DB • TPSImport_Forms • TPSImport_Controls • TPSImport_StdCtrls • TPSCustomPlugin
SynEdit TSynEdit • TSynCompletion • TSynAutoComplete • TSynMacroRecorder • TSynExporterHTML • TSynPluginSyncroEdit • TSynPasSyn • TSynFreePascalSyn • TSynCppSyn • TSynJavaSyn • TSynPerlSyn • TSynHTMLSyn • TSynXMLSyn • TSynLFMSyn • TSynDiffSyn • TSynUNIXShellScriptSyn • TSynCssSyn • TSynPHPSyn • TSynTeXSyn • TSynSQLSyn • TSynPythonSyn • TSynVBSyn • TSynAnySyn • TSynMultiSyn • TSynBatSyn • TSynIniSyn • TSynPoSyn
Chart TChart • TListChartSource • TRandomChartSource • TUserDefinedChartSource • TCalculatedChartSource • TDbChartSource • TChartToolset • TChartAxisTransformations • TChartStyles • TChartLegendPanel • TChartNavScrollBar • TChartNavPanel • TIntervalChartSource • TDateTimeIntervalChartSource • TChartListBox • TChartExtentLink • TChartImageList
IPro TIpFileDataProvider • TIpHttpDataProvider • TIpHtmlPanel