| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C++ Builder > обработчик Компоненты управления TButton |
| Автор: rohzan 19.5.2008, 07:57 |
| Здравствуйте Есть 2 формы Form1 и Form2(From2 пустая и не имеет ни каких функций и компонентов?). На форме Form1 есть кнопка при нажатии которого вызывается Form2 и на нем динамически создается 2 edit и одна кнопка. Вопрос Как обработать событию нажатии динамически созданной кнопки на Form2 если при условии нажатии должна суммироваться значения edit-ов Form2? Заранее благодарю, |
| Автор: ksili 19.5.2008, 09:11 | ||||
| примерно так: 1) создаешь функцию с таким же прототипом как Button1Click() как метод класса Form2. Назовём ее DynButtonClick 2) создаёшь кнопку так:
3) А уже в DynButtonClick выполняешь всё что тебе надо:
|
| Автор: petlyura 19.5.2008, 09:12 |
| Когда создаешь динамически кнопку, то пишешь после конструктора. Button1->OnClick = MyButtonClick; Помещаешь void __fastcall MyButtonClick(...) в заголовочный файл формы и пишешь обработчик в *.cpp void __fastcall TForm2::MyButtonClick(...) { // суммируешь тут } ksili, чуток не успел за тобой |
| Автор: rohzan 19.5.2008, 11:15 | ||||||
| Я сдела как было сказано но не работает в чем моя ошибка
Форма2 "Unit2.h"
"Unit2.cpp"
|
| Автор: ksili 19.5.2008, 11:21 |
| что/как не работает? |
| Автор: rohzan 19.5.2008, 11:37 |
| Выдает ошибку E2109 Not an allowed type в строке button->OnClick = Form2->MyButtonClick(); |
| Автор: orthrus 19.5.2008, 12:09 | ||
скобки убери:
А в силу каких причин кнопку и эдиты нельзя создать в конструкторе Form2? |
| Автор: rohzan 19.5.2008, 12:25 |
| спасибо заработало |