Forum Replies Created
-
AuthorPosts
-
Макс ПершинParticipant
Здравствуйте. Сейчас у меня 21 версия. Пишу вот такой код –
procedure TForm1.ComboBoxFill(Sender: TObject);
var i:integer; comboItems:TStrings;
begin
if sender = sComboBox1 then
comboItems := scombobox1.items
else
comboItems := combobox1.Items;
with comboItems do
begin
BeginUpdate;
Clear;
for I := 0 to 3000 do
begin
Add(intToStr(i) + '_' + intToStr(i))
end;
EndUpdate;
end;
end;
Всё равно задержка явная есть. Прилагаю программу в которой сравнивается скорость заполнения открытого sCombobox и обычного Combobox (в обычном задержки нет).
Макс ПершинParticipantВот примитивная програамка. После применения скина через 2 сек – возвращается в старое состояние.
Макс ПершинParticipantСергей, здравствуйте! в 16 версии ещё не пофикшена эта проблема? Вы там маякните плиз, как выложите.
Макс ПершинParticipant'Support' wrote:Спасибо, будет улучшено в ближайшем релизе.
Должна будет работать конструкция “Items.BeginUpdate..Items.EndUpdate”
И вам Merci
Макс ПершинParticipantВот exe
Макс ПершинParticipantВот пример, попробуйте с скином и без. По поводу других постов – спасибо за внимание, но я имел ввиду немного другое. Добавляются строки быстро в закрытом combobox.
А когда выпадающий список открыт и строк около 1000, происходит медленно.
Макс ПершинParticipantВот пример проекта в котором медленное поведение
Макс ПершинParticipant'Support' wrote:Возможно посмотреть демку c таким поведением ComboBox?
Завтор перешлю с работы. Суть по моему в том, что перерисовка запускается даже при добавлении тех строк, которые уже не видны в выпадающем списке.
-
AuthorPosts