Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

TValueListEditor


Dr H ©   (2007-06-13 10:58:00) 

Почему при
ValueListEditor.Strings.Values['ValueName'] := '';
он удаляет строку.
Мне нужно чтобы набор Key был постоянным, в не зависимости от их значений.


horse   (2007-06-13 12:12:00) [1]

Точно. ValueListEditor.Values['name']
И TStrings.SetValue не удаляет пустое значение.
Спасибо :)


Плохиш   (2007-06-13 12:07:00) [2]


> horse ©   (13.06.07 12:05) [3]
>> Плохиш ©   (13.06.07 11:13) [2]
> не понял вопроса :-/

Зачем использовать коллекцию строк, если у компонента имеется свойство Values, преднозначенное для манипуляций со значениями?


horse   (2007-06-13 12:05:00) [3]

Сергей М. ©   (13.06.07 11:07) [1]
Спасибо, понял.
А будут какие-либо идеи что можно сделать?
vcl не хотелось бы менять...
Мне нужен постоянный набор переменных значения которых будут меняться и могут стать Value <> '', но переменная должна остаться со значением '', иначе она будет проигнорирована.

Плохиш ©   (13.06.07 11:13) [2]
не понял вопроса :-/


Плохиш   (2007-06-13 11:13:00) [4]


> Dr H   (13.06.07 10:58)  
> Почему при
> ValueListEditor.Strings.Values['ValueName'] := '';

А чем свойство Values у ValueListEditor неугодило?


Сергей М.   (2007-06-13 11:07:00) [5]


> Почему


Потому что (цитата из генофонда):

procedure TStrings.SetValue(const Name, Value: string);
var
 I: Integer;
begin
 I := IndexOfName(Name);
 if Value <> '' then
 begin
   if I < 0 then I := Add('');
   Put(I, Name + NameValueSeparator + Value);
 end else
 begin
   if I >= 0 then Delete(I);
 end;
end;


Наверх

Титульная страница Поиск, карта сайта Написать письмо