![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Сгенерировать уникальное имя для компонента в пределах приложения [D7, WinXP]
Paul__ © (2005-03-04 18:51:00)Здравствуйте, посоветуйте, как лучше реализовать subj. Заранее благодарен.
Eraser (2005-03-04 21:47:00) [1]Ну может быть.
Paul__ (2005-03-04 21:41:00) [2]> При чём тут форма и компоненты вообще?
Абстрактный пример насчет пушек и воробьев. В том плане что под разные задачи - разные решения, иногда сильно различающиеся.
Eraser (2005-03-04 21:35:00) [3]Paul__
При чём тут форма и компоненты вообще?
Речь идёт о списке идентификаторов объектов (в твоём случае компонентов) к которым можно обратиться по имени? Так?
Так вот можно, конечно обращаться через имя..., но нужно (проверено и не раз) обращаться через указатель на этот объект.
Paul__ (2005-03-04 21:28:00) [4]И все-таки подискутировать можно :)
2 Eraser
А может тогда и формы не использовать, а на апи все делать? Из пушки да о воробьям..имхо, самый оптимальный способ - [1].
Eraser (2005-03-04 21:24:00) [5]Paul__
Если не стеб, то бред говоришь.
Ну-ну, желаю удачи в твоём начинании )
ЗЫ Всё равно всё листом закончиться, trust me.
Набережных С. (2005-03-04 21:06:00) [6]
> TUser © (04.03.05 20:16) [9]
> еще чего-то никак не могу найти - функцию, которая CLSID
> генерирует
CoCreateGuid. Только там черточки:)
Paul__ (2005-03-04 20:29:00) [7]А так, думаю можно считать тему закрытой. Всем спасибо за ответы.
Paul__ (2005-03-04 20:28:00) [8]2 Eraser
Если не стеб, то бред говоришь.
Eraser (2005-03-04 20:27:00) [9]Создавай список TList или TStringList указателей.
Eraser (2005-03-04 20:26:00) [10]Paul__
Ты аведомо на неверном пути.
TUser (2005-03-04 20:16:00) [11]random
еще чего-то никак не могу найти - функцию, которая CLSID генерирует
PS. забей, массив сделай
Anatoly Podgoretsky (2005-03-04 19:38:00) [12]FormatDateTime
Paul__ (2005-03-04 19:18:00) [13]2 Defunct © (04.03.05 19:15) [5]
Ну принцип тот же, что и clickmaker[1]. Однако, за идею спасибо.
Defunct (2005-03-04 19:17:00) [14]Defunct © (04.03.05 19:15) [5]
пардон:
Application.Tag := Application.Tag + 1;
Defunct (2005-03-04 19:15:00) [15]NewComp := TComponent.Create( ... );
Inc(Application.Tag);
NewComp.Name := TComponent.ClassName + IntToStr( Application.Tag );
begin...end (2005-03-04 19:11:00) [16]> webpauk (04.03.05 19:02) [2]
Этот способ может стать некорректным после удаления какого-нибудь компонента.
Paul__ (2005-03-04 19:08:00) [17]Мм..до этого я как-то сам додумался, просто не хотелось новую переменную вводить. Спасибо за помощь.
webpauk (2005-03-04 19:02:00) [18]Prefix + inttostr(Form.Components.Count)
clickmaker (2005-03-04 18:59:00) [19]Prefix + IntToStr(Count)
Count увеличивать при создании нового экземпляра