Winexcel Опубликовано 29 июня, 2017 Поделиться Опубликовано 29 июня, 2017 (изменено) Здравствуйте, стилизую TComboBox, хочу понять как сделать сабж через стили. И хотелось бы ещё получить ответ почему: в ComboBox при наведении на любой айтем подстветка используется от ListBoxItemStyle - > Selection из стилей. Изменено 29 июня, 2017 пользователем Winexcel Цитата Ссылка на комментарий
0 Winexcel Опубликовано 30 июня, 2017 Автор Поделиться Опубликовано 30 июня, 2017 (изменено) Понял я вот что, в popup окне которое всплывает под комбобоксом находится ListBox, поэтому он и берет стиль от ListBoxStyle.Вопрос следующий: можно ли как-то задать свой стиль для всплывающего ListBox который используется вместе с компонентом TComboBox? Изменено 30 июня, 2017 пользователем Winexcel Цитата Ссылка на комментарий
0 Модераторы Равиль Зарипов (ZuBy) Опубликовано 30 июня, 2017 Модераторы Поделиться Опубликовано 30 июня, 2017 да можно получить ListBox и его элементы и присвоить нужные стили Цитата Ссылка на комментарий
0 Winexcel Опубликовано 30 июня, 2017 Автор Поделиться Опубликовано 30 июня, 2017 27 минут назад, Равиль Зарипов (ZuBy) сказал: да можно получить ListBox и его элементы и присвоить нужные стили А можно пример как вообще получить доступ к всплывающему ListBox? Или нужно сам комбобокс переписывать? Цитата Ссылка на комментарий
0 Модераторы Равиль Зарипов (ZuBy) Опубликовано 30 июня, 2017 Модераторы Поделиться Опубликовано 30 июня, 2017 3 часа назад, Winexcel сказал: А можно пример как вообще получить доступ к всплывающему ListBox? Или нужно сам комбобокс переписывать? Цитата Ссылка на комментарий
0 Winexcel Опубликовано 10 сентября, 2017 Автор Поделиться Опубликовано 10 сентября, 2017 В 30.06.2017 в 09:38, Равиль Зарипов (ZuBy) сказал: Добрый день! Пробую присвоить стиль всем Item так: List:=TStringList.Create; List.Add('Test1'); List.Add('Test2'); List.Add('Test3'); for I := 0 to List.Count-1 do begin Item:=TListBoxItem.Create(nil); Item.Text:=List[i]; Combo.ListBox.AddObject(Item); Item.StyleLookup:='ListBoxItemStyle2'; Item.NeedStyleLookup; end; List.Clear; List.Free; Но все равно по умолчанию применяется стиль ListBoxItemStyle, что нужно сделать чтобы применить стиль? Цитата Ссылка на комментарий
0 Winexcel Опубликовано 10 сентября, 2017 Автор Поделиться Опубликовано 10 сентября, 2017 Вот такой вариант тоже не сработал: procedure TFormMain.ComboPopup(Sender: TObject); begin Combo.ListBox.DefaultItemStyles.ItemStyle:='ListBoxItemStyle2'; end; Цитата Ссылка на комментарий
0 Winexcel Опубликовано 24 сентября, 2017 Автор Поделиться Опубликовано 24 сентября, 2017 UP Цитата Ссылка на комментарий
0 dnekrasov Опубликовано 26 сентября, 2017 Поделиться Опубликовано 26 сентября, 2017 В 10.09.2017 в 19:11, Winexcel сказал: Вот такой вариант тоже не сработал: procedure TFormMain.ComboPopup(Sender: TObject); begin Combo.ListBox.DefaultItemStyles.ItemStyle:='ListBoxItemStyle2'; end; Может так сработает: procedure TFormMain.ComboPopup(Sender: TObject); begin Combo.ListBox.DefaultItemStyles.ItemStyle := 'ListBoxItemStyle2'; Combo.ListBox.NeedStyleLookup; Combo.ListBox.ApplyStyleLookup; end; Цитата Ссылка на комментарий
Вопрос
Winexcel
Здравствуйте, стилизую TComboBox, хочу понять как сделать сабж через стили. И хотелось бы ещё получить ответ почему:
Изменено пользователем Winexcelв ComboBox при наведении на любой айтем подстветка используется от ListBoxItemStyle - > Selection из стилей.
Ссылка на комментарий
8 ответов на этот вопрос
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.