13.03.2011, 10:22 | #1 (permalink) |
404
Регистрация: 10.01.2010
Сообщений: 1,749
Записей в дневнике: 5
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 3868
|
Компоненты в рантайме
|
13.03.2011, 10:22 | |
Helpmaster
Member
Регистрация: 08.03.2016
Сообщений: 0
|
Если воспользоваться поиском, то можно найти много полезной информации Компоненты Электронные компоненты. SMD компоненты Компоненты и температура Delphi библиотеки и компоненты |
13.03.2011, 11:23 | #3 (permalink) |
Member
Регистрация: 09.03.2011
Сообщений: 25
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
а чтобы действие какое то выполняла, надо создать процедурку, например,
[code]procedure Deystvie(Sender:TObject); begin ShowMessage('ты нажал кнопку!'); end; ну и потом уже ссылаешься на эту процедуру при событии Onclick созданной кнопки: Код:
myButton.onclick:=deystvie; |
13.03.2011, 12:20 | #4 (permalink) |
404
Регистрация: 10.01.2010
Сообщений: 1,749
Записей в дневнике: 5
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 3868
|
Спасибо, разобрался. Еще одно: эта кнопка должна создаваться в каком-то месте. причем место строго не определено. Нужно определить есть ли на форме еще такие кнопки. Как это организовать?
|
13.03.2011, 12:59 | #5 (permalink) | |
Member
Регистрация: 09.03.2011
Сообщений: 25
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
Цитата:
а вообще поиск элементов вот так идёт: Код:
for i:=0 to Componentcount-1 do if Components[i].classname='TButton' then что-то делаем.. а потом её искать по этому св-ву.. Код:
for i:=0 to Componentcount-1 do if Components[i].tag=2 then что-то делаем.. |
|
Ads | |
Member
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
|
13.03.2011, 14:03 | #6 (permalink) |
404
Регистрация: 10.01.2010
Сообщений: 1,749
Записей в дневнике: 5
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 3868
|
сама прога это TmainMenu и чистая форма. Подключаются плагины. Каждый плагин должен автоматически добавлять на форму кнопку по нажатию которой открывается форма из плагина. вот и реализовываю случай когда плагин не первый и кнопку плагина N надо поместить относительно кнопи плагина N-1
|
13.03.2011, 14:29 | #7 (permalink) |
Banned
Регистрация: 01.09.2009
Сообщений: 4,396
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 2544
|
У Delphi должен быть механизм для автоматического размещения кнопок по форме.
Изобретать велосипед нежелательно. Это раз. Далее, каким образом плагин должен создавать кнопку? Ему передается указатель на главную форму? Это очень плохая идея, так как все плагины придется писать только на Delphi. И в третьих, вы тестировали то, что вам тут посоветовали? У меня есть основания полагать, что все это работать не будет. |
13.03.2011, 15:06 | #9 (permalink) |
404
Регистрация: 10.01.2010
Сообщений: 1,749
Записей в дневнике: 5
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 3868
|
плагины будут тоже на делфи. специфика программы. Попробовал то что советовали. ругается когда объявляю MyButton: Tbutton;
Long Cat может вы предложите как это будет лучше огранизовать? |
13.03.2011, 15:12 | #10 (permalink) |
Banned
Регистрация: 01.09.2009
Сообщений: 4,396
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 2544
|
Очень просто - для начала нужно выбросить Delphi куда подальше :-). Нет, ну правда.
С++ в связке с wxWidgets позволяет делать весьма неплохие программы, в том числе и с плагинами. Каким текстом он ругается? |
Ads | |
Member
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
|
|
|