Как сделать так, чтобы полосы прокрутки отображались на TScrollBox?

StackOverflow https://stackoverflow.com/questions/1415267

  •  06-07-2019
  •  | 
  •  

Вопрос

Элемент управления TScrollBox выглядит так, как будто он представляет собой TPanel с полосами прокрутки, прикрепленными вдоль нижнего и правого края.Я попытался разместить одну из них в форме, но что бы я ни делал, я не могу заставить полосы прокрутки появляться ни во время разработки, ни во время выполнения.Кто-нибудь знает, как заставить их появиться?

Это было полезно?

Решение

Установите для свойства AutoScroll значение True .
Теперь, если вы добавите элементы управления, которые обрезают границы блока, появятся полосы.

Другие советы

Мейсон

Вы не можете видеть полосы прокрутки, пока на самом деле не будет чего прокручивать.

Чтобы увидеть полосы прокрутки, попробуйте это

1. Установите для свойства BorderStyle формы значение bsSingle.

2.Вставьте кнопку в форму.

3.Поместите полосу прокрутки в форму

4. Установите для свойства Align TScrollBox значение alClient.

5. Запустите этот код одним нажатием кнопки.

procedure TForm10.Button1Click(Sender: TObject);
Var
i : integer;
ed : TEdit;
begin
           for i:=1 to 30 do
           Begin
              ed:=TEdit.Create(self);
              ed.Parent:=ScrollBox1;
              ed.Top:=5+((i-1)*30);
              ed.Left:=10;
              ed.Width:=100;
              ed.Text:='Editext'+ IntToStr(i);
           End;
end;

Пока.

Если я не ошибаюсь (нет Delphi, чтобы проверить), достаточно установить HorzScrollBar.Range достаточно большим.

РЕДАКТИРОВАТЬ: IIUC этот DFM делает то, что вы хотите - полностью во время разработки:

object Form1: TForm1
  Left = 0
  Top = 0
  Caption = 'Form1'
  ClientHeight = 206
  ClientWidth = 312
  Color = clBtnFace
  ParentFont = True
  OldCreateOrder = True
  PixelsPerInch = 96
  TextHeight = 13
  object ScrollBox1: TScrollBox
    Left = 8
    Top = 8
    Width = 150
    Height = 150
    HorzScrollBar.Range = 300
    VertScrollBar.Range = 300
    AutoScroll = False
    TabOrder = 0
  end
end
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top