Перейти к содержанию
Fire Monkey от А до Я

Indonesia

Пользователи
  • Постов

    2
  • Зарегистрирован

  • Посещение

Сообщения, опубликованные Indonesia

  1. Всем привет!

    Уважаемые коллеги, помогите пожалуйста. Получаю список контактов с помощью TAddressBook, но скорость оставляет желать лучшего.

    Даже загоняя в массив, а не в Listbox данные таким образом, только добавление номеров занимает около 30 секунд для 500 контактов.

    Каждое дополнительное обращение например к Contacts.Items.FirstName или другим полям добавляет соразмерно времени на обработку.

    Может быть есть возможность выгрузить всю коллекцию в массив и обрабатывать более быстро? То, что получается сейчас, просто непозволительно долго для внимания пользователя.

    Contacts := TAddressBookContacts.Create;
    form1.AddressBook1.AllContacts(form1.AddressBook1.DefaultSource, Contacts);
    
    SetLength(ImpContList,Contacts.Count,8);
    
    for I := 0 to Contacts.Count - 1 do
    begin
        if Contacts.Items[I].Phones.Count > 0 then
        ImpContList[i][0]:=Contacts.Items[I].Phones.Items[0].Number;
    end;

     

×
×
  • Создать...