Перейти к содержанию

Поиск сообщества

Показаны результаты для тегов 'tcombobox'.

  • Поиск по тегам

    Введите теги через запятую.
  • Поиск по автору

Тип контента


Форумы

  • Общие вопросы
    • Анимация
    • Графика
    • Стили
    • Базы данных и REST
    • Компоненты
    • Положение, размеры, выравнивание
    • Работа с текстом
    • Приложение и формы
    • Отладка
    • Развертывание приложений
    • Вопросы по языку Object Pascal и RTL
    • Общая информация о TControl
    • События
    • Прочие вопросы
  • Вопросы по платформам
  • Вопросы по использованию RAD Studio
  • Native FGX
  • Обучение
  • Поиск специалистов по FireMonkey
  • Дополнительные ресурсы по FireMonkey
  • Организация работы данного форума
  • Видеокурсы

Поиск результатов в...

Поиск контента, содержащего...


Дата создания

  • Старт

    Конец


Дата обновления

  • Старт

    Конец


Фильтр по количеству...

Регистрация

  • Старт

    Конец


Группа


AIM


MSN


Сайт


ICQ


Yahoo


Jabber


Skype


StackOverflow


Защита от ботов


Город


Интересы

Найдено: 5 результатов

  1. Столкнулся с такой проблемой: Есть форма с TComboBox. Стиль форме (один из тех, который поставляется из коробки) задаю в run-time: procedure TFormEditorRoomAttribute.FormCreate(Sender: TObject); begin inherited; self.StyleBook := uAccommodationInventory.ReferenceAccommodationInventoryForm.StyleBook; end; Необходимо, чтобы TComboBox отображал items c bitmap. Заполняю TComboBox.ListBox так же в run-time (TListBoxItem.StyleLookup := 'listboxitemleftdetail'): var I: integer; FListBoxItem: TListBoxItem; begin //cbPicture: TCombobox; Self.cbPicture.BeginUpdate; Self.FRoomAttributePictures := ConnectionModule.DSServerModuleAccommodationClient.GetRoomAttributePictures; for I := 0 to Self.FRoomAttributePictures.Count - 1 do begin FListBoxItem := TListBoxItem.Create(Self.cbPicture); FListBoxItem.TagObject:= Self.FRoomAttributePictures[i]; FListBoxItem.ItemData.Text := Self.FRoomAttributePictures[i].ID.ToString; FListBoxItem.ItemData.Bitmap := Self.FRoomAttributePictures[i].GetBitmap; FListBoxItem.StyleLookup := 'listboxitemleftdetail'; Self.cbPicture.AddObject(FListBoxItem); end; Self.cbPicture.EndUpdate; end; TComboBox.DropDownKind выставляю в "Custom". Вроде как всё готово. Но получается вот такая картина. Создаю и отображаю форму, bitmap в TCombobox отображен: Раскрываю список, bitmaps так же отображаются: Но, как только выбираю один из items, происходит следующее: выбранный item не отображается, вообще! Долго ли, мало ли копался в исходниках TCombobox... В общем нашел некоторое решение данной проблемы. На событие TComboBox.OnClosePopup повесил код: begin //cbPicture: TCombobox; self.cbPicture.Selected.NeedStyleLookup; self.cbPicture.NeedStyleLookup; self.ApplyStyleLookup; end; Результат, выбранный item отображается в TCombobox: Теперь вопрос: Так и должно отрабатывать? Или что-то делаю не так?! Если что-то делаю не так, то как надо делать?
  2. Morfi

    TCombobox и поиск.

    Ребята, как правильно настроить или реализовать поиск в TCombobox (данные которого связаны через livebinding c БД) при помощи TSearchBox?
  3. На форму кладём TTabControl с двумя табами. На одном из них помещаем ComboBox. В процедуре формируем item'ы. Примерно так: procedure TForm1.FormCombo(aCombo: TComboBox); var Item: TListBoxItem; i: integer; begin aCombo.BeginUpdate; aCombo.Items.Clear; for I := 0 to 2 do begin Item := TListBoxItem.Create(nil); Item.Text := 'Item '+IntToStr(I); Item.StyleLookup:= 'listboxitemstyle'; Item.Parent := aCombo; end; aCombo.EndUpdate; end; Вызываем при создании формы: procedure TForm1.FormCreate(Sender: TObject); begin FormCombo(ComboBox1); ComboBox1.ItemIndex:= 0; end; и пересоздаем список item'ов после переключения табов. procedure TForm1.TabControl1Change(Sender: TObject); begin if TabControl1.TabIndex= 0 then begin FormCombo(ComboBox1); ComboBox1.ItemIndex:= 0; end; end; Естественно, устанавливаем активный item, после того как их список сформирован. В XE7 всё работает как часы. В XE8 - артефакт. После переключения табов активный Item - нулевой, но ComboBox не отображает его значение. Визуально это выглядит так, будто ItemIndex = -1. Проекты для XE7 и XE8 прикрепил. https://yadi.sk/d/4FGvgF-ti5dWz
  4. Есть класс: class TMyObjectInt : public TObject { private: int Value; public: __fastcall TMyObjectInt (int _Value); __fastcall ~TMyObjectInt(); }; Есть ComboBox: for (int i = 1; i <= 10; i++) cbxItems->Items->AddObject(IntToStr(i), new TMyObjectInt(i)); Почему при вызове ->Clear() не вызываются деструкторы для TObject'ов? Казалось бы базовый TObject замечательно для этого подходит, даже деструктор у него виртуальным объявлен. Я могу написать свою функцию очистки, но это потенциально приводит к ошибкам, особенно если я отдаю указатель на ComboBox за пределы своей формы. Кстати, так же ведут себя и многие другие контролы, да и в VCL было так же.
  5. Не отображаются кастомные item's при разворачивании списка TComboBox. Нет отображения конкретно в выпадающем списке, в самом TComboBox всё ок. Пробовал перерисовку во время события onPopup, создание на различных родителях и т.д. - не помогло. Подскажите в чем может быть дело ? Спасибо. Чистый проект прилагается: RAD Studio XE6 CustomComboBox.zip
×
×
  • Создать...