Текущий архив: 2006.04.30;
Скачать: CL | DM;
Вниз
Выпадающий список знач свойства и ReadOnly Найти похожие ветки
← →
Priest © (2005-10-27 17:54) [0]Делаю свой редактор свойста и пишу
function TMyPropEditor.GetAttributes: TPropertyAttributes;
begin
Result := [paValueList, paSortList, paRevertable];
end;
Пользователь может поменять значение свойства (выбрать из списка), а также написать вручную...Как запретить заносить неверное значение?
← →
Юрий Зотов © (2005-10-27 18:34) [1]При формировании списка сохранять его, а перед присвоеним проверять веденное значение на вхождение в список.
type
TMyPropEdit = class(...)
private
FList: TStringList;
FProc: TGetStrProc;
procedure MyProc(const S: string);
public
constructor ... // в нем создать FList
destructor ... // в нем уничтожить FList
procedure GetValues(Proc: TGetStrProc); override;
procedure SetValue(const Value: string); override;
...
end;
procedure TMyPropEdit.GetValues(Proc: TGetStrProc);
begin
FList.Clear;
FProc := Proc;
... // формируем список, но вместо Proc вызываем MyProc
end;
procedure TMyPropEdit.MyProc(const S: string);
begin
FList.Add(S);
FProc(S)
end;
procedure SetValue(const Value: string);
begin
if FList.IndexOf(Value) < 0 then
raise ...; // возбуждаем исключение
inherited
end;
← →
Priest © (2005-10-28 09:01) [2]Спасибо...Так я и делал. Только список у меня глобальный, поэтому сохранять его нет нужды.
Страницы: 1 вся ветка
Текущий архив: 2006.04.30;
Скачать: CL | DM;
Память: 0.44 MB
Время: 0.008 c