Steepe_Hare Опубликовано 24 декабря, 2016 Поделиться Опубликовано 24 декабря, 2016 Почему если создаешь в ран-тайме TListboxItem, то текстовые свойства не меняются? Вложил пример. Заранее спасибо. procedure TForm1.Button1Click(Sender: TObject); var ListBoxItem: TListboxItem; J: Integer; begin ListBox1.BeginUpdate; try for J := 1 to 5 do begin ListBoxItem := TListboxItem.Create(ListBox1); ListBoxItem.TextSettings.FontColor := TAlphaColors.Red; ListBoxItem.TextSettings.Font.Style := [TFontStyle.fsBold]; ListBoxItem.Text := 'Item' + IntToStr(J); ListBox1.AddObject(ListBoxItem); end; finally ListBox1.EndUpdate; end; end; 1.zip Цитата Ссылка на комментарий
0 egorea1999 Опубликовано 24 декабря, 2016 Поделиться Опубликовано 24 декабря, 2016 ListBoxItem.StyledSettings := []; Steepe_Hare 1 Цитата Ссылка на комментарий
0 Steepe_Hare Опубликовано 24 декабря, 2016 Автор Поделиться Опубликовано 24 декабря, 2016 21 минуту назад, egorea1999 сказал: ListBoxItem.StyledSettings := []; Спасибо, помогло. Только непонятно зачем так нужно делать Цитата Ссылка на комментарий
0 egorea1999 Опубликовано 24 декабря, 2016 Поделиться Опубликовано 24 декабря, 2016 Только что, Steepe_Hare сказал: Спасибо, помогло. Только непонятно зачем так нужно делать Берутся стандартные свойства со стиля, для того, чтобы их можно было перекрыть, нужно убрать нужные перечисления из множества, либо дополнить их. Равиль Зарипов (ZuBy), Kitty и Steepe_Hare 3 Цитата Ссылка на комментарий
0 Steepe_Hare Опубликовано 24 декабря, 2016 Автор Поделиться Опубликовано 24 декабря, 2016 13 минут назад, egorea1999 сказал: Берутся стандартные свойства со стиля, для того, чтобы их можно было перекрыть, нужно убрать нужные перечисления из множества, либо дополнить их. А не подскажете, какое свойство отвечает за цвет выделенного ListBoxItem? Цитата Ссылка на комментарий
0 egorea1999 Опубликовано 24 декабря, 2016 Поделиться Опубликовано 24 декабря, 2016 (изменено) 15 минут назад, Steepe_Hare сказал: А не подскажете, какое свойство отвечает за цвет выделенного ListBoxItem? Выделенного? Вам нужно редактировать стиль TListBoxItem'a, чтобы настроить его вид. Изменено 24 декабря, 2016 пользователем egorea1999 Цитата Ссылка на комментарий
0 Steepe_Hare Опубликовано 24 декабря, 2016 Автор Поделиться Опубликовано 24 декабря, 2016 (изменено) Немного не то написал. Не цвет самого выделенного айтема, а цвет фона выделенного айтема. Наверное это больше к Listbox-у относится Изменено 24 декабря, 2016 пользователем Steepe_Hare Цитата Ссылка на комментарий
0 egorea1999 Опубликовано 24 декабря, 2016 Поделиться Опубликовано 24 декабря, 2016 (изменено) Сейчас попробую что-нибудь придумать. Изменено 24 декабря, 2016 пользователем egorea1999 Steepe_Hare 1 Цитата Ссылка на комментарий
0 egorea1999 Опубликовано 25 декабря, 2016 Поделиться Опубликовано 25 декабря, 2016 24 минуты назад, Steepe_Hare сказал: Наверное это больше к Listbox-у относится tmp.zip Так? Цитата Ссылка на комментарий
0 Steepe_Hare Опубликовано 25 декабря, 2016 Автор Поделиться Опубликовано 25 декабря, 2016 16 минут назад, egorea1999 сказал: tmp.zip Так? я извиняюсь, а что поменялось? как был цвет фона голубоватый, так и остался Цитата Ссылка на комментарий
0 egorea1999 Опубликовано 25 декабря, 2016 Поделиться Опубликовано 25 декабря, 2016 Только что, Steepe_Hare сказал: я извиняюсь, а что поменялось? как был цвет фона голубоватый, так и остался А какой вам нужен? Уточнили бы) Цитата Ссылка на комментарий
0 Steepe_Hare Опубликовано 25 декабря, 2016 Автор Поделиться Опубликовано 25 декабря, 2016 13 минут назад, egorea1999 сказал: А какой вам нужен? Уточнили бы) Произвольный. Я думал, как-то цвет можно поставить через свойство Цитата Ссылка на комментарий
0 egorea1999 Опубликовано 25 декабря, 2016 Поделиться Опубликовано 25 декабря, 2016 Только что, Steepe_Hare сказал: Произвольный. Я думал, как-то цвет можно поставить через свойство Да, тогда сейчас попробую переделать мой пример, чтобы было виднее. Цитата Ссылка на комментарий
0 egorea1999 Опубликовано 25 декабря, 2016 Поделиться Опубликовано 25 декабря, 2016 (изменено) tmp.zip StyleBook1->TestListBoxItemStyle->background->SourceLink Было бы хорошо, если был TActiveTintedStyleObject (есть только TTintedStyleObject), можно было регулировать цвет как угодно .. Изменено 25 декабря, 2016 пользователем egorea1999 Steepe_Hare 1 Цитата Ссылка на комментарий
0 Steepe_Hare Опубликовано 25 декабря, 2016 Автор Поделиться Опубликовано 25 декабря, 2016 извиняюсь, что не врубаюсь) но у меня при двойном щелчке на StyleBook только StyleContainer Цитата Ссылка на комментарий
0 egorea1999 Опубликовано 25 декабря, 2016 Поделиться Опубликовано 25 декабря, 2016 23 минуты назад, Steepe_Hare сказал: извиняюсь, что не врубаюсь) но у меня при двойном щелчке на StyleBook только StyleContainer там все есть, разверни его Цитата Ссылка на комментарий
0 Модераторы Равиль Зарипов (ZuBy) Опубликовано 25 декабря, 2016 Модераторы Поделиться Опубликовано 25 декабря, 2016 не смотрел исходник, но уже на скрине видно что стиль сделан под Platform: Windows 10 Desktop если вы переключитесь на андроид например или ваша ос не win 10, StyleBook будет пустой общие элементы которые не хотите завязывать на платформы, нужно делать под Platform: Default egorea1999 и Steepe_Hare 2 Цитата Ссылка на комментарий
0 Steepe_Hare Опубликовано 25 декабря, 2016 Автор Поделиться Опубликовано 25 декабря, 2016 Абсолютно верно! У меня Windows 7 Цитата Ссылка на комментарий
Вопрос
Steepe_Hare
Почему если создаешь в ран-тайме TListboxItem, то текстовые свойства не меняются? Вложил пример. Заранее спасибо.
procedure TForm1.Button1Click(Sender: TObject);
var
ListBoxItem: TListboxItem;
J: Integer;
begin
ListBox1.BeginUpdate;
try
for J := 1 to 5 do
begin
ListBoxItem := TListboxItem.Create(ListBox1);
ListBoxItem.TextSettings.FontColor := TAlphaColors.Red;
ListBoxItem.TextSettings.Font.Style := [TFontStyle.fsBold];
ListBoxItem.Text := 'Item' + IntToStr(J);
ListBox1.AddObject(ListBoxItem);
end;
finally
ListBox1.EndUpdate;
end;
end;
1.zip
Ссылка на комментарий
17 ответов на этот вопрос
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.