From Clomosy Docs

Revision as of 14:51, 22 August 2024 by ClomosyManager (talk | contribs)

Base class for controls that represent a scroll area (scroll box). One use of a scroll box is to group multiple graphical controls (such as buttons, list boxes, edit boxes, radio buttons, and so on) under the same scrollable parent (the scroll box itself). In this way, a smaller form can contain a lot of graphical objects organized in a scrollable manner in order to occupy less space on a graphical user interface.

AddNewHorzScrollBox(xOwner:TComponent; xName:String): TclHorzScrollBox

TComponent : The variable name of the defined component is written. Here you should write the component variable name of whatever your component will be in.

xName : The name of the defined horzscrollbox should be written.

Feature Use of Definition
TclHorzScrollBox HertScrollBox1: TclHorzScrollBox; A variable belonging to the TclHorzScrollBox class is created.
AddNewHorzScrollBox HertScrollBox1 = MyForm.AddNewHorzScrollBox(MyForm,'testHorzScrollBox'); A new TclHorzScrollBox is added to the form.
Width HertScrollBox1.Width = 150; Allows adjusting the width of the scrollBox.
Height HertScrollBox1.Height = 50; Allows adjusting the height of the scrollBox.
Align HertScrollBox1.Align = alTop; With the Align parameter, you can specify where you want our component to be aligned in the form. This parameter has multiple positioning properties. See the page to learn about these features.
Margins HertScrollBox1.Margins.Left = 50; // Right, Top, Bottom With the Margins parameter, you can give margins at any scale from the right, left, bottom, top.

Example:

TRObject Syntax
 var
   MyForm:TclForm;
   testButton : TclButton;
   horzScrollBox : TClHorzScrollBox;
   lytContainer : TClLayout;
   testImg : TClProImage;
   isCreated : Boolean;
 void SetupImageComponent;
 var
   i : Integer;
 {
   if (isCreated)  exit;
   lytContainer.Width = 0;
   for (i = 1 to 7)
   {
     testImg = MyForm.AddNewProImage(lytContainer,'testImg'+IntToStr(i));
     testImg.Align = alLeft;
     testImg.Margins.Left = 10;
     testImg.Width = 100;
     MyForm.SetImage(testImg,'https://media1.cucuvi.com/Dic19/BD220BD4-7AEA-43FA-AF97-E62D073AFD1B.jpg');
     lytContainer.Width = lytContainer.Width + testImg.Width + testImg.Margins.Left;
   }
   isCreated = True;
 }
 
 void ButtonClicked;
 {
   SetupImageComponent;
 }
 
 {
   isCreated = False;
   MyForm = TclForm.Create(Self);
   testButton= MyForm.AddNewButton(MyForm,'testButton','Load Images Horizontally');
   testButton.TextSettings.Font.Size=50;
   testButton.Align = alCenter;
   testButton.Height = 50;
   testButton.Width = 200;
   
   horzScrollBox = MyForm.AddNewHorzScrollBox(MyForm,'horzScrollBox');
   horzScrollBox.Align = alTop;
   horzScrollBox.Height = 100;
   horzScrollBox.Margins.Left = 10;
   horzScrollBox.Margins.Right = 10;
   horzScrollBox.Margins.Top = 10;
   horzScrollBox.ShowScrollBars = True;
   
   lytContainer = MyForm.AddNewLayout(horzScrollBox,'lytContainer');
   lytContainer.Align = alLeft;
   lytContainer.Width = 200;
   
   MyForm.AddNewEvent(testButton,tbeOnClick,'ButtonClicked');
   MyForm.Run;
 }
Base Syntax
 var
   MyForm:TclForm;
   testButton : TclButton;
   horzScrollBox : TClHorzScrollBox;
   lytContainer : TClLayout;
   testImg : TClProImage;
   isCreated : Boolean;
 procedure SetupImageComponent;
 var
   i : Integer;
 begin
   if isCreated then exit;
   lytContainer.Width := 0;
   for i:= 1 to 7 do
   begin
     testImg := MyForm.AddNewProImage(lytContainer,'testImg'+IntToStr(i));
     testImg.Align := alLeft;
     testImg.Margins.Left := 10;
     testImg.Width := 100;
     MyForm.SetImage(testImg,'https://media1.cucuvi.com/Dic19/BD220BD4-7AEA-43FA-AF97-E62D073AFD1B.jpg');
     lytContainer.Width := lytContainer.Width + testImg.Width + testImg.Margins.Left;
   end;
   isCreated := True;
 end;
 
 procedure ButtonClicked;
 begin
   SetupImageComponent;
 end;
 
 begin
   isCreated := False;
   MyForm := TclForm.Create(Self);
   testButton:= MyForm.AddNewButton(MyForm,'testButton','Load Images Horizontally');
   testButton.TextSettings.Font.Size:=50;
   testButton.Align := alCenter;
   testButton.Height := 50;
   testButton.Width := 200;
   
   horzScrollBox := MyForm.AddNewHorzScrollBox(MyForm,'horzScrollBox');
   horzScrollBox.Align := alTop;
   horzScrollBox.Height := 100;
   horzScrollBox.Margins.Left := 10;
   horzScrollBox.Margins.Right := 10;
   horzScrollBox.Margins.Top := 10;
   horzScrollBox.ShowScrollBars := True;
   
   lytContainer := MyForm.AddNewLayout(horzScrollBox,'lytContainer');
   lytContainer.Align := alLeft;
   lytContainer.Width := 200;
   
   MyForm.AddNewEvent(testButton,tbeOnClick,'ButtonClicked');
   MyForm.Run;
 end;

Output:
HorzScrollBox.png

See Also