Перейти к содержанию
Fire Monkey от А до Я
  • 0

ListView нестандартное расположение ScrollBar'a


Николай_1988

Вопрос

Здравствуйте, коллеги! Подскажите, если не сложно, в чем может быть причина размещения скролла у LV не справа, как обычно, а в непонятной области и мелкого размера. Список формируется по примеру с данного форума

Если схожий проект, на основании которого этот делал. Там работает все как должно. А тут уже все перепробовал, стиль удалял и прочее. Создаю пустой проект, кидаю LV, заполняю. Все нормально, скролл в родном месте.

Все что связанно с данным компонентом:

var
  FCanUpdate: Boolean;
  LItem: TListViewItem;

...

  F_General.Qry.SQL.Text:='SELECT N_subsection FROM N_subsection';
  F_General.Qry.Open;
  UpdateListSubSection;

...

procedure UpdateListSubSection;
var
id, Subsection : string;
begin
  F_General.LV_SubSection.BeginUpdate;
  if F_General.LV_SubSection.Items.Count <> 0 then
  F_General.LV_SubSection.Items.Clear;
  While not F_General.Qry.Eof do
   begin
      SubSection := F_General.Qry.FieldByName('N_subsection').AsString;
      FCanUpdate := False;
      LItem := F_General.LV_SubSection.Items.Add;
      LItem.Data['SubSection'] := SubSection;
      FCanUpdate := True;
      F_General.LV_SubSection.Adapter.ResetView(LItem);
      F_General.Qry.Next;
   end;
   F_General.Qry.Close;
end;

procedure TF_General.LV_SubSectionUpdatingObjects(const Sender: TObject;
  const AItem: TListViewItem; var AHandled: Boolean);
var
  LText: TListItemText;
  h: Integer;
begin
  if not FCanUpdate then
  Exit;
  h := 0;
  //подраздел
  LText := AItem.Objects.FindObjectT<TListItemText>('SubSection');
  if LText = nil then
    begin
      LText := TListItemText.Create(AItem);
      LText.Name := 'SubSection';
      LText.PlaceOffset.X := 20;
      LText.PlaceOffset.Y := h;
      LText.SelectedTextColor := WhiteColor;
      LText.TextColor := WhiteColor;
      LText.TextAlign := TTextAlign.Leading;
      LText.TextVertAlign := TTextAlign.Leading;
      LText.Font.Size := 15;
 //     LText.Font.Style := [TFontStyle.fsBold];
      LText.Font.Family:='JhengHei UI';
    end;
  LText.Width := (Sender as TListView).Width - 50;
  LText.Text := AItem.Data['SubSection'].AsString;
  LText.Height := 27;
  h := Round(h + LText.Height);
  AItem.Height := h+3;
  AHandled := True;
end;

 

1.png

Ссылка на комментарий

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

  • 0

Всем спасибо, разобрался

procedure UpdateListSubSection;
var
id, Subsection : string;
begin
  F_General.LV_SubSection.BeginUpdate;
  if F_General.LV_SubSection.Items.Count <> 0 then
  F_General.LV_SubSection.Items.Clear;
  While not F_General.Qry.Eof do
   begin
      SubSection := F_General.Qry.FieldByName('N_subsection').AsString;
      FCanUpdate := False;
      LItem := F_General.LV_SubSection.Items.Add;
      LItem.Data['SubSection'] := SubSection;
      FCanUpdate := True;
      F_General.LV_SubSection.Adapter.ResetView(LItem);
      F_General.Qry.Next;
   end;

   F_General.LV_SubSection.EndUpdate;   
   F_General.Qry.Close;
end;

Ссылка на комментарий

Присоединяйтесь к обсуждению

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

Гость
Ответить на вопрос...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

  • Последние посетители   0 пользователей онлайн

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