![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Найти класс [D7, XP]
AntiUser © (2009-06-04 09:31:00)Возможно ли найти класс TObject по имени содержащимся в строке?
Класс свой.
Юрий Зотов (2009-06-04 17:22:00) [1]1. Наследоватся от TPersistent.
2. Самопальные велосипеды выкинуть и использовать штатные средства сохранения и загрузки.
AntiUser (2009-06-04 15:12:00) [2]
> MBo © (04.06.09 13:43) [13]
Что оставлю как есть ;)
Задача не стОит того, что бы колупаться.
Можно было наследоваться от TPersistent, как сказал DrPass © [9] и использовать регистрацию и поиск класса, как упоминули вы и ИШ. Так же ИШ предлагает наследоваться сразу от TComponent видимо с последующим использованием Write/ReadComponent.
Но нет у меня времени, за сим будет работать как есть, а если понадобится и будет время, то можно и заняться.
Никто же не дал кода рабочего =))))
P.S. Последняя строка - шутка. ps для борцов за "грамматику русского языка", т.к. он не поддерживает (в нынешней реализации) наличия смайлов. А указать, что это шутка более никак нельзя. =))
MBo (2009-06-04 13:43:00) [3]>Ясно.
Что именно ясно?
AntiUser (2009-06-04 13:33:00) [4]Всем спасибо. Ясно.
Игорь Шевченко (2009-06-04 13:16:00) [5]MBo © (04.06.09 13:14) [10]
Тогда автору имеет смысл наследоваться от TComponent
MBo (2009-06-04 13:14:00) [6]>[8] [9]
Ему экземпляры объектов одного класса надо различать по названию переменной, судя по [4]
DrPass (2009-06-04 12:07:00) [7]...и еще TPersistent вместо TObject
Игорь Шевченко (2009-06-04 10:50:00) [8]RTFM: RegisterClass, FindClass
AntiUser (2009-06-04 10:43:00) [9]
> Плохиш © (04.06.09 10:36) [6]
Не надо умничать. Это не вопросительное предложение. Это утверждение.
> PS. В грамматике русского языка написано, что вопросительные
> предложения должны заканчиваться знаком вопроса.
PS. Вопросительные предложения должны заканчиваться знаком вопроса!
> MBo © (04.06.09 10:33) [5]
> Так у тебя не класс, а объекты искать надо...
Что у меня не так? Как надо переделать, если надо? Как вы видите решение?
Плохиш (2009-06-04 10:36:00) [10]
> AntiUser (04.06.09 09:50) [2]
>
> А не зарегистрированный не найти.
Трудно найти чёрную кошку в тёмной комнате, к тому же если её там нет.
PS. В грамматике русского языка написано, что вопросительные предложения должны заканчиваться знаком вопроса.
MBo (2009-06-04 10:33:00) [11]Так у тебя не класс, а объекты искать надо...
AntiUser (2009-06-04 10:26:00) [12]
> MBo © (04.06.09 09:57) [3]
> А что за задача?
Текствой файл:
MyClass1.FirstField=aaaaa
MyClass1.SecondField=bbbbb
etc
MyClass2.FirstField=aaaaa
MyClass2.SecondField=bbbbb
etc
Класс:
TMyClass = class(TObject)
private
FFirstField: string;
FSecondField: string;
published
property FirstField: string read FFirstField write FFirstField;
property SecondField: string read FSecondField write FSecondField;
Открыть и загрузить значения.
Сейчас стоит просто:
if s = 'MyClass1' then
SetPropValue(MyClass1, PropName, PropVal);
if s = 'MyClass2' then
SetPropValue(MyClass2, PropName, PropVal);
Думал сделать более универсально.
MBo (2009-06-04 09:57:00) [13]>А не зарегистрированный не найти.
Ну да.
А что за задача?
AntiUser (2009-06-04 09:50:00) [14]А не зарегистрированный не найти.
Дык, это тоже самое, если я сделаю массив классов и буду сам заниматься поиском...
MBo (2009-06-04 09:34:00) [15]RegisterClass(es) + FindClass/GetClass (если я правильно интерпретировал вопрос)