• 0
Indonesia

TAddressBook, Контакты и скорость

Вопрос

Всем привет!

Уважаемые коллеги, помогите пожалуйста. Получаю список контактов с помощью 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;

 

Изменено пользователем Indonesia

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


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

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

Нет ответов на вопрос

Создайте аккаунт или войдите для комментирования

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

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!


Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.


Войти сейчас

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу