Здравствуйте, коллеги! Подскажите, если не сложно, в чем может быть причина размещения скролла у 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;
Вопрос
Николай_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 ответ на этот вопрос
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.