uses CommCtrl;
procedure tNoScrollbarsTreeview.createparams(var params: TCreateParams);
begin
inherited;
params.style := params.style or TVS_NOSCROLL;
end;
Here's the translation of the text into Russian:
Код, который вы предоставили, - это хороший старт для удаления полос прокрутки из компонента TTreeView в Delphi. Флаг стиля TVS_НOSCROLL указывает дереву не отображать полосы прокрутки, даже если его содержимое превышает видимую область.
Вот разбивка того, что ваш код делает:
Он определяет процедуру CreateParams, которая является частью класса (вероятно,派生ованного от TForm или другого класса, похожего на форму).
Внутри этой процедуры он вызывает метод наследника (inherited;) для выполнения процедур создания родительских классов.
Затем он устанавливает свойство style рекорда params включать флаг TVS_НOSCROLL. Этот флаг предотвращает отображение полос прокрутки в дереве.
Однако, есть более простой способ достичь этого:
uses CommCtrl;
procedure TForm1.FormCreate(Sender: TObject);
begin
TreeView1.Style := TreeView1.Style or tvs_noscroll;
end;
В этом коде:
FormCreate - это обработчик события, который вызывается при создании формы.
Внутри этого метода он устанавливает свойство Style компонента TTreeView (TreeView1) включать флаг TVS_НOSCROLL. Это предотвратит отображение полос прокрутки в дереве.
Вы можете заменить свой код на этот новый, если хотите более компактное и легко понимаемое решение.
Убрать скроллбары от дерева TTreeView можно с помощью параметра стиля TVS_NOSCROLL в методе CreateParams.
Комментарии и вопросы
Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.