Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.11.07;
Скачать: CL | DM;

Вниз

вопрос про объекты   Найти похожие ветки 

 
PURGEN   (2004-10-24 08:30) [0]

Подскажите функцию для определения: СУЩЕСТВУЕТ ли объект с данным имененм или НЕТ...


 
Polevi ©   (2004-10-24 09:23) [1]

что есть объект в твоем понимании


 
PURGEN   (2004-10-24 09:32) [2]

Например кнопочка на форме...


 
begin...end ©   (2004-10-24 09:38) [3]


> [2] PURGEN   (24.10.04 09:32)

1. Посмотреть, есть ли кнопочка в массиве TForm.Components.
2. Вызвать TForm.FindComponent(). Если результат - NIL, то кнопочки нет.

P.S. Это справедливо, если при создании кнопочки её владельцем назначается форма.


 
PURGEN   (2004-10-24 09:41) [4]

спасибо...


 
Anatoly Podgoretsky ©   (2004-10-24 10:15) [5]

begin...end ©   (24.10.04 09:38) [3]
Это неверно по сути, нужен Controls, а не Components


 
begin...end ©   (2004-10-24 11:18) [6]


> [5] Anatoly Podgoretsky ©   (24.10.04 10:15)

Что именно неверно? Controls содержит список всех дочерних окон, а Components - список всех компонентов, владельцем которых является данный компонент. Т.е. я так понимаю, что в списке Controls будут окна, Parent"ом которых является, в данном случае, форма. Но в [1] я уточнил, что писал про Owner"а.


 
Anatoly Podgoretsky ©   (2004-10-24 11:27) [7]

btn := TButton.Create(nil); или btn := TButton.Create(Application);

btn.Parent := Form1;

и где твой Components
А в Controls все органы на форме.


 
begin...end ©   (2004-10-24 11:30) [8]


> [7] Anatoly Podgoretsky ©   (24.10.04 11:27)


> и где твой Components

В TApplication. А где будет Ваш Controls, если не назначить Parent"а? ;-)


 
Anatoly Podgoretsky ©   (2004-10-24 11:32) [9]

А где здесь Аpplication btn := TButton.Create(nil);

Ну если ты начал искать оправдания, но нам говорить не о чем.


 
begin...end ©   (2004-10-24 11:40) [10]


> [9] Anatoly Podgoretsky ©   (24.10.04 11:32)


> А где здесь Аpplication btn := TButton.Create(nil);

А здесь - нигде.

> Ну если ты начал искать оправдания, но нам говорить не о чем.

Ничего я не начал; я не спорю, что Ваш ответ правилен, а просто говорю, что правилен и мой ответ, если кнопку создавать соответствующим образом.


 
Anatoly Podgoretsky ©   (2004-10-24 12:57) [11]

Нет ты именно споришь, невзирая на приведеный код. Пожетому твой ответ не правильный, код для того и приведен, чтобы ты в этом и убедился.

Тебе бы посмотреть мультик "Тайна третье планеты"


 
begin...end ©   (2004-10-24 13:36) [12]


> [11] Anatoly Podgoretsky ©   (24.10.04 12:57)


> Нет ты именно споришь

Уж спорю я или нет, - мне, наверное, виднее. Я даже написал в [10]: я не спорю.

> невзирая на приведеный код

Вот Вам код:

btn := TButton.Create(что угодно);
btn.Parent := Panel1;


Panel1 находится на форме Form1. Будет ли btn в списке Form1.Controls? Нет. Так что Ваш ответ - тоже не панацея.
А если вписать Form1 вместо что угодно, то btn можно будет найти в Form1.Components.

> твой ответ не правильный

Мой ответ [3] правильный, потому что там указано, как нужно создавать кнопку, чтобы потом можно было найти её так, как я написал.

> Тебе бы посмотреть мультик "Тайна третье планеты"

В первый раз слышу, а про что там?



Страницы: 1 вся ветка

Текущий архив: 2004.11.07;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.027 c
14-1097827196
Akril
2004-10-15 11:59
2004.11.07
Полицейский разворот и др.


1-1098438349
NATA
2004-10-22 13:45
2004.11.07
Файлы


14-1098309853
Anonimus
2004-10-21 02:04
2004.11.07
Модераторам предложение


4-1096668653
НовичОк
2004-10-02 02:10
2004.11.07
Обращение к чужому приложению


4-1096465847
noname
2004-09-29 17:50
2004.11.07
Native API