![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как опросить не существующие контролы? [D7, XP]
vodvorezlaya © (2006-09-18 12:07:00)Доброго времени суток.
Создал я допустим несколько контролов во время работы программы,
TEdit'ы и TComboBox'ы как их опрашивать если они ещё не существуют?
Плохиш (2006-09-25 10:53:00) [1]
> vodvorezlaya (22.09.06 16:28) [61]
> Ну если кому-то интересно, то в данный момент у меня цель
> изучить Delphi, SQL и многое другое.
Книжки читать не пробовал?
> То что узнаю из опыта передаю другим в форумах.
Я плякал, а вы говорите "Архангельский" :-))
vodvorezlaya (2006-09-25 08:03:00) [2]
> for i := 0 to MyObjectList.Count - 1 do
> Rulezz;
Ну вроде то.
А вообще можно было бы компонент написать, который имел-бы метод Rulezz;
Всем вери сенькс.
Ketmar (2006-09-22 18:24:00) [3]>[60] Игорь Шевченко(c) 22-Sep-2006, 11:41
>Дату при цитировании приведи в нормальный вид,
>плз.
не вопрос. так нормально? или всё цифрами сделать?
vodvorezlaya (2006-09-22 16:28:00) [4]
> offtop:
offtop:
Ну если кому-то интересно, то в данный момент у меня цель изучить Delphi, SQL и многое другое.
Работаю программером на окладе, где написание программ не обязательно но приветствуется.
То что узнаю из опыта передаю другим в форумах.
Игорь Шевченко (2006-09-22 11:41:00) [5]Ketmar © (22.09.06 08:57) [58]
Дату при цитировании приведи в нормальный вид, плз.
Наиль (2006-09-22 11:34:00) [6]
> что у меня вся DNA-таки кривая
Что за DNA?
> а по-моему -- метла
А по моему метла - это слишком мягко.
А с другой стороны. У человека хватает терпения ждать ответа.
Так почему бы не дать ему (потом догнать и ещё раз дать:-) несколько уроков правильной поставки вопроса. Уж это ему точно в жизни пригодиться.
Ketmar (2006-09-22 08:57:00) [7]>[57] Сергей М.(c) 22-Sep-XLI A.S., 08:54
>Если ссылки на созданные тобой контролы
...
а по-моему -- метла. или это я просто зол от того, что у меня вся DNA-таки кривая?
Сергей М. (2006-09-22 08:54:00) [8]
> vodvorezlaya (22.09.06 08:47) [55]
Если ссылки на созданные тобой контролы фигурируют в некоем списке (неважно каком, будь он хоть TObjectList, хоть Controls, хоть Components), то всегда есть возможность получить кол-во элементов этого списка, чтобы использовать его в кач-ве верхней границы цикла:
for i := 0 to MyObjectList.Count - 1 do
Rulezz;
Ketmar (2006-09-22 08:53:00) [9]offtop:
sql не знаем. Delphi не знаем. а программу, судя по всему, пишем за деньги (иначе зачем порт пинать?). ужос. УВЧ.
vodvorezlaya (2006-09-22 08:47:00) [10]Да в принципе любая процедура.
Procedure Rulezz;
vodvorezlaya (2006-09-22 08:32:00) [11]
> Откуда нам знать. В [51] ни слова не сказано, что за процедура
> такая.
Процедура связи по COM порту, протокол RK-512.
В ней 4 параметра.
procedure READ_RK512(temp: array of byte; c: integer; var data: array of byte;count: integer);
Нужно узнать сколько создали элементов(допустим TEdit'ов) и ровно столько раз выполнять эту процедуру, а входным параметром будет строка TEdit'а. (Это всё нужно делать во время работы программы без компилятора).
Спасибо.
Наиль (2006-09-22 08:18:00) [12]
> Как прописать и где вызов этой процедуры?
Откуда нам знать. В [51] ни слова не сказано, что за процедура такая.
vodvorezlaya (2006-09-22 08:05:00) [13]
> Есть процедура, входные параметры которой задаются динамически
> созданными компонентами(набором на TPanel).
>
> Вот сколько таких TPanel(c Edit,Edit,ComboBox) создадим
> столько нужно и процедуру выполнять, с той последовательностью
> входных параметров скакой мы создавали их.
Как прописать и где вызов этой процедуры?
vodvorezlaya (2006-09-21 10:15:00) [14]
> > нужно ещё выполнять процедуру опроса каждого из них
>
> как-такой "опрос"?
Есть процедура, входные параметры которой задаются динамически созданными компонентами(набором на TPanel).
Вот сколько таких TPanel(c Edit,Edit,ComboBox) создадим столько нужно и процедуру выполнять, с той последовательностью входных параметров скакой мы создавали их.
Огромное всем спасибо.
Пока пошёл это пробовать.
Сергей М. (2006-09-21 09:19:00) [15]
> не знаю какой модуль отвечает за шаблоны компонентов
Никакой.
Инф-ция о существующих шаблонах хранится в файле (%DELPHI)\bin\delphi.dct.
Делфи использует этот файл исключительно в дизайн-тайм.
Тот самый идентификатор TPanelTemplate не является идентификатором класса, поэтому строчка TPanelTemplate.Create(..) бессмысленна.
Для создания группы контролов в ран-тайм "по шаблону" следует использовать фреймы.
Наиль (2006-09-21 09:10:00) [16]
> нужно ещё выполнять процедуру опроса каждого из них
как-такой "опрос"?
Наиль (2006-09-21 09:07:00) [17]
> А как узнать их колличество?
MyList.Count
> И на что влияет nil в строчке: MyList.Add(TEdit.Create(nil))?
TEdit.Create(self) - Edit уничтожается формой (если self - форма) при уничтожении формы.
TEdit.Create(Panel1) - Edit уничтожается при уничтожении панели.
TEdit.Create(nil) - уничтожание - обязаность программиста.
MyList.OwnsObjects:=true; - объекты будут уничтожатся автоматически при удалении их из списка MyList, и как следствие, при уничтожении самого MyList.
vodvorezlaya (2006-09-21 08:14:00) [18]
> Virgo_Style ©
> Сколько ТЫ создал - столько и есть.
Ну я то может и знаю сколько, а прога не знает сколько я ей создам.
Есть некая процедура, которую нужно выполнять столько - сколько этих компонентов (набор Panel а на ней 2 Edit и 1 ComboBox) создаст пользователь (который не знает что такое D7).
Т.е. кроме создания компонентов нужно ещё выполнять процедуру опроса каждого из них.
> Про USES знаем ?
Я не знаю какой модуль отвечает за шаблоны компонентов.
Сергей М. (2006-09-20 16:48:00) [19]
> vodvorezlaya (20.09.06 16:33) [44]
> Undeclared identifier: 'TPanelTemplate'
> я перефразировал с англиканского
Спасибо за одолжение)
Ну и ?
Паскаль-то знаем ?
Про USES знаем ?
Virgo_Style (2006-09-20 16:39:00) [20]vodvorezlaya (20.09.06 16:33) [44]
А как узнать их колличество?
Сколько ТЫ создал - столько и есть.