code_10058.txt
какие есть соображения: во время операции Write на массиве Indexes(кнопка "to 0") по хорошему наверно стоило бы автоматически вызывать Invalidate на ListBox, что приводит нас к необходимости как-то хранить в самом менеджере списки всех элементов, его использующих. Скажем так:
#pas
TIIndexManager = record
outidx:function(inidx:integer): integer of object;
addControl:procedure (obj:PControl);
removeControl:procedure (obj:PControl);
end;
...
procedure TMyClass.Init;
begin
...
if assigned(_prop_IndexManager) then _prop_IndexManager.AddControl(Control);
...
end;
------------ Дoбавленo:
и еще: может это только у меня так, но при запуске примера выше вот такая наблюдается картинка:
------------ Дoбавленo:
этот артифакт появляется при получение фокуса элементом и исчезает при потере фокуса. При добавление хотя бы одного пункта эффект так же пропадает