Ra72 Опубликовано 24 января, 2015 Поделиться Опубликовано 24 января, 2015 Есть разноцветные ListBoxItem-ы, надо вывести картинку или радиобатон, которые обозначали бы, что данный пункт сейчас выделен. Как это сделать? Цитата Ссылка на комментарий
0 xenon54 Опубликовано 25 января, 2015 Поделиться Опубликовано 25 января, 2015 Не уверен что правильно понял вопрос, но попробую ответить так как понял. var RB : TRadioButton; begin RB := TRadioButton.Create(ListBox1.ItemByIndex(1)); RB.Parent := ListBox1.ItemByIndex(1); RB.Align := TAlignLayout.Right; end; Ну или TImage вместо TRadioButton. Цитата Ссылка на комментарий
0 Ra72 Опубликовано 27 января, 2015 Автор Поделиться Опубликовано 27 января, 2015 Поясню. У ListBoxItem-ов есть некий стиль. В момент его применения рисуются RadioButton из стиля. Как мне в момент изменения состояния Selection данной строки списка, установить точку внутрь RadioButton? Первая проблема - найти событие на изменение состояния Selection. Вторая проблема - изменить состояние RadioButton. Цитата Ссылка на комментарий
0 xenon54 Опубликовано 27 января, 2015 Поделиться Опубликовано 27 января, 2015 Если я правильно понял (Вы сделали свой стиль для ListBoxItem и вставили туда свой RadioButton), то: 1. Вам нужно присвоить "stylename" для этого RadioButton в стиле, допустим назвали вы его "MyRB". 2. В обработчике событий ListBox'a - OnItemClick пишем: procedure TForm1.ListBox1ItemClick(const Sender: TCustomListBox; const Item: TListBoxItem); var i : integer; begin for i := 0 to ListBox1.count-1 do ListBox1.ItemByIndex(i).StylesData['MyRB.IsChecked'] := False; Item.StylesData['MyRB.IsChecked'] := True; end; Цитата Ссылка на комментарий
0 Ra72 Опубликовано 27 января, 2015 Автор Поделиться Опубликовано 27 января, 2015 Спасибо, это то что нужно. Цитата Ссылка на комментарий
Вопрос
Ra72
Есть разноцветные ListBoxItem-ы, надо вывести картинку или радиобатон, которые обозначали бы, что данный пункт сейчас выделен.
Как это сделать?
Ссылка на комментарий
4 ответа на этот вопрос
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.