Вверх ↑
Ответов: 1376
Рейтинг: 197
#1: 2014-09-30 08:32:11 ЛС | профиль | цитата
Galkov писал(а):
ну или:   if (FIndex<0) or (FIndex>=Flist.Count) then FIndex := -1;

вот это ещё интереснее, так бы и устаканить, можно будет скакать по списку, при миллионных списках, с одинаковой скоростью
#pas
procedure THIStrList._work_doGetString;
begin
FIndex :=ReadInteger(_Data, _data_IdxToSelect);
FString := FList.Items[FIndex];
if (FIndex<0) or (FIndex>=Flist.Count) then FIndex := -1;

//FString := FList.Items[ReadInteger(_Data, _data_IdxToSelect)];
//FIndex := FList.IndexOf(FString);
_hi_CreateEvent(_Data, @_event_onGetString, FString);
end;
или, как вариант, добавить флажок в свойства, переключающий с одного варианта на другой
карма: 1

0