С Новым годом! Форум программистов, компьютерный форум, киберфорум
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
0 / 0 / 0
Регистрация: 22.06.2017
Сообщений: 8

Как передать значения динамически создаваемых компонентов процедуре

07.09.2017, 22:18. Показов 1167. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Есть pagecontroll на нем есть кнопка которая создает новую вкладку:
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
  procedure TForm1.btn3Click(Sender: TObject);
var
  tab: Ttabsheet;
  edt: Tedit;
  edtr: Tedit;
  edtt: Tedit;
  edty: tedit;
  BUTT: Tbutton;
  BUTT2: Tbutton;
begin
  if pgc1.PageCount < 40 then
  begin
  tab:=Ttabsheet.Create(pgc1);
  i:=i+1;
  edt:=tedit.Create(tab);
  edt.Parent:=tab;
  edt.Top:=edt1.Top;
  edt.Left:=edt1.Left;
  edt.Enabled:=false;
  edt.Text:=edt1.Text;
  edt.Width:=edt1.Width;
  edt.Height:=edt1.Height;
  edt.OnChange:=edt1Change;
  edtr:=tedit.Create(tab);
  edtr.Parent:=tab;
  edtr.Top:=edt2.Top;
  edtr.Left:=edt2.Left;
  edtr.Text:=edt2.Text;
  edtr.OnChange:=edt2Change;
  edtr.Width:=edt2.Width;
  edtr.Height:=edt2.Height;
  edtt:=tedit.Create(tab);
  edtt.Parent:=tab;
  edtt.Top:=edt3.Top;
  edtt.Left:=edt3.Left;
  edtt.OnChange:=edt3Change;
  edtt.Text:=edt3.Text;
  edtt.Width:=edt3.Width;
  edtt.Height:=edt3.Height;
  edty:=tedit.Create(tab);
  edty.Parent:=tab;
  edty.Top:=edt4.Top;
  edty.Left:=edt4.Left;
  edty.Enabled:=false;
  edty.Text:=edt4.Text;
  edty.Width:=edt4.Width;
  edty.Height:=edt4.Height;
  Butt:=Tbutton.Create(tab);
  BUTT.Parent:=tab;
  BUTT.Top:=btn2.Top;
  BUTT.Caption:=btn2.Caption;
  BUTT.Width:=btn2.Width;
  BUTT.Height:=btn2.Height;
  BUTT.Left:=btn2.Left;
  BUTT.Enabled:=False;
  BUTT.OnClick:=btn2Click;
  Butt2:=Tbutton.Create(tab);
  BUTT2.Parent:=tab;
  BUTT2.Top:=btn1.Top;
  BUTT2.Caption:=btn1.Caption;
  BUTT2.Width:=btn1.Width;
  BUTT2.Height:=btn1.Height;
  BUTT2.Left:=btn1.Left;
  BUTT2.Enabled:=false;
  BUTT2.OnClick:=btn1Click;
  tab.Caption:='Âêëàäêà'+inttostr(i+1);
  tab.PageControl:=pgc1;
  end;
end;
Как процедуре передать значение ново созданных едитов. которые являются копиями уже существующих. И уже с ними проводить указанные в процедуре (а точнее ее потоке) действия. соответствующие действиям в первой вкладке с соответствующими компонентами на первой вкладке (только во второй).
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
07.09.2017, 22:18
Ответы с готовыми решениями:

Динамическое создание компонентов. Как передать значения владельца и родителя и откуда их взять
Пробую как в &quot;учебнике&quot;: procedure TForm1.Panel1Click(Sender: TObject); var MyPanel: TPanel; begin ...

Описание динамически создаваемых объектов
Доброго времени суток. Проблема: в ходе выполнения программы создаются изображения с определенным набором имен. Затем мне нужно к ним...

Сохранение в INI Динамически создаваемых объектов
Привет всем. Решил попробовать создавать элементы динамически, до этого никогда с этим не сталкивался. procedure...

4
пофигист широкого профиля
4769 / 3204 / 862
Регистрация: 15.07.2013
Сообщений: 18,609
08.09.2017, 02:07
Цитата Сообщение от ьнуенькенькенье Посмотреть сообщение
Как процедуре передать значение ново созданных едитов
Какой процедуре?
0
 Аватар для krapotkin
6847 / 4674 / 1463
Регистрация: 14.04.2014
Сообщений: 20,656
Записей в блоге: 21
08.09.2017, 09:25
что за "поток процедуры"?
0
0 / 0 / 0
Регистрация: 22.06.2017
Сообщений: 8
08.09.2017, 20:29  [ТС]
процедура запускает поток
Delphi
1
2
3
4
5
6
7
Mythread := Waterfall.Create(true);
    MyThread.Priority := tpIdle;
    MyThread.FreeOnTerminate := True;
    Form1.Enabled:=False;
    ThreadHandle:=mythread.Handle;
    tmr1.Enabled:=true;
    Mythread.Resume;
Добавлено через 1 час 6 минут
Вот что в потоке, а мне нужно чтоб эти свойства заменялись не у этих компонентов а у тех что на соответствующей вкладке
Delphi
1
2
3
4
5
6
Form1.tmr1.Enabled:=false;
  ReplEdit.Enabled:=False;
  SignEdit.Enabled:=False;
  SearchBtn.Enabled:=False;
  ReturnBTN.Enabled:=True;
  Form1.Enabled:=True;
0
 Аватар для krapotkin
6847 / 4674 / 1463
Регистрация: 14.04.2014
Сообщений: 20,656
Записей в блоге: 21
08.09.2017, 22:22
у класса потока вы можете наделать столько полей сколько влезет. любого типа
туда и помещайте ссылки на все что ему понадобится в работе
Delphi
1
2
3
4
th:=TMyThread.Create(True);
th.MyParam1:=1;
th.FProgressBar := ProgressBar1;
th.resume;
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
08.09.2017, 22:22
Помогаю со студенческими работами здесь

Проблемка с указанием положения динамически создаваемых панелей в ScrollBox
Собственно, проблема уже полностью описана в заглавии темы. Я динамически создаю Panel и помещаю её в ScrollBox, когда при загрузке...

Как передать имя компонента в переменной в процедуре?
как передать имя компонента в переменной в процедуре ну например есть такая процедура procedure KeyPres(Sender: TObject; var Key: Char); ...

Как передать полученные в запросе значения процедуре?
select eid1, t.tdate1 as srokg,t.tdate2 as dataout, select 0 from R_PROCENTSG(srokg, dataout) from lin e, lib l, idn t where...

Как передать значения массива в подпрограммму процедуру и вывести элементы в процедуре
никак не получается Добавлено через 32 минуты чё никто не знает?

Как передать значения на сервер из динамически созданных <select>
Создаю динамически в таблице элемент select вот таким вот кодом function deleteRow(index){ var table =...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и напряжениями. Надо найти токи в ветвях. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и решает её. Последовательность действий:. . .
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru