Перейти к содержанию
  • 0
antarey

Как узнать ширину ползунка у TScrollBar?

Вопросы

Как узнать ширину ScrollBar-а (самой полосы прокрутки) для различных платформ Android/Windows.

 

Задача в чем - при увеличении длинны дочернего элемента скрулбара появляется полоса прокрутки и ширина дочернего элемента уменьшается, а мне надо чтобы ширина едита не менялась - а для этого  как я понимаю надо увеличить ширину скрулбара на ширину полосы прокрутки, а она разная для разных платформ 
post-49-0-51753700-1417084900_thumb.png

Поделиться сообщением


Ссылка на сообщение

Рекомендуемые сообщения

  • 0

Использовать, когда стиль для TScrollBar загружен.

type
  TOpenScrollBar = class(TScrollBar);
  TOpenCustomTrack = class(TCustomTrack);

function GetThumbWidth(const AScrollBar: TScrollBar): Single;
var
  Track: TCustomTrack;
  Thumb: TThumb;
  ThumbWidth: Single;
begin
  ThumbWidth := 0;
  Track := TOpenScrollBar(AScrollBar).Track;
  if Track <> nil then
  begin
    Thumb := TOpenCustomTrack(Track).Thumb;
    if Thumb <> nil then
      ThumbWidth := Thumb.Width;
  end;
  Result := ThumbWidth;
end;

procedure TForm4.Button1Click(Sender: TObject);
begin
  ShowMessage(GetThumbWidth(ScrollBar1).ToString);
end;

Поделиться сообщением


Ссылка на сообщение
Гость
Эта тема закрыта для публикации ответов.

  • Похожий контент

    • От VirusZ2D
      Каким макаром можно изменить минимальный размер ползунка ?
      есть свойство Viewportsize но оно зависит от значения св-ва  max 
      в списке 2000 элементов хотелось бы его сделать немного больше
  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×
×
  • Создать...