• 0
beklexx

Items + KeyItems

Вопросы

Народ, подскажите пожалуйста как сейчас решают вопрос с уникальным ключом для каждой строки в Combobox... что то типа Items.Tag там добавили, нет?

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

5 ответов на этот вопрос

  • 1

Народ, подскажите пожалуйста как сейчас решают вопрос с уникальным ключом для каждой строки в Combobox... что то типа Items.Tag там добавили, нет?

 

Кто вам мешает создать TListBoxItem

var
  item: TListBoxItem;
begin
  item := TListBoxItem.Create(nil);
  item.text := 'combo item';
  item.parent := Combobox1;
  Item.tag := 1000;
end;

доступ к значению (по памяти)

ComboBox1.ListItems[0].Tag

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

Заполняю ComboBox из БД, где  Item.tag - это ID записи.

А нет ли у ComboBox стандартных/готовых методов поиска и позиционирования (выбора) нужного TListBoxItem`а?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

Не могу сообразить, как правильно организовать цикл For/In

 

function TfmEditObject.FindListBoxItem(id: integer; combo: TComboBox): integer;
Var
 ListBoxItem: TListBoxItem;
begin
  result := -1;
  for ListBoxItem in Combo.ListItems do
    if ListBoxItem.Tag = id then
      exit(ListBoxItem.Index)
end;

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

вот так будет правильно

function FindListBoxItem(id: integer; combo: TComboBox): integer;
var
  I: integer;
begin
  result := -1;
  for I := 0 to combo.Count - 1 do
  begin
    if combo.ListItems[I].Tag = id then
      Exit(combo.ListItems[I].Index);
  end;
end;

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

я так и сделал, но я хотел через for/in

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Похожий контент

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу