Технофашист
228 / 216 / 11
Регистрация: 11.03.2009
Сообщений: 887
|
|||||||||||||||||||||
1 | |||||||||||||||||||||
Программное создание событий для кнопок06.04.2011, 12:16. Показов 3638. Ответов 3
Метки нет (Все метки)
есть главная форма, есть дочерняя.
При запуске дочерней создаются программно кнопки и им приписываются события. При закрытие дочерней формы кнопки удаляются, так что можно создавать и вновь удалять без ошибок. Проблема в том, что если в процедуре кнопок приписать вызов закрытия формы Form.Close, (т.е. нажал на кнопку и дочерняя закрылась форма), то после этого при следующем запуске дочерней формы вылезает ошибка чтения памяти. Но главное если просто закрывать форму через крестик, то всё ок. Вот создание кнопок:
Процедура для события выглядит элементарно:
Закрытие формы происходит так:
//Собственно сама процедура удаления:
0
|
06.04.2011, 12:16 | |
Ответы с готовыми решениями:
3
Программное создание кнопок Обработчик событий для динамических кнопок Программное создание кнопок и обработка событий для каждой из созданных Программное создание кнопок и событий |
306 / 187 / 26
Регистрация: 14.02.2010
Сообщений: 544
|
|
07.04.2011, 17:48 | 2 |
Вы пытаетесь уничтожить объект из фактически его же свойства(метода). Странно только, что исключение не выскакивает сразу, а только при следующем обращении к форме.
Используйте вместо непосредственного вызова DeleteButtons отложенную обработку, скажем, послав форме сообщение WM_CLOSE
1
|
160 / 159 / 13
Регистрация: 14.01.2010
Сообщений: 1,497
|
|
07.04.2011, 18:21 | 3 |
В делфи 2007 это работает, хотя может лучше в место close использовать hide;
Добавлено через 1 минуту А лучше выложи исходник а то кто знает может не там ищешь
0
|
Noоb
|
|
03.01.2012, 15:56 | 4 |
используй функцию freeandnil(<здесь указываешь имя объекта для удаления>)
|
03.01.2012, 15:56 | |
03.01.2012, 15:56 | |
Помогаю со студенческими работами здесь
4
Программное создание и получение событий от любых создаваемых контролов Создание кнопок из кода и событий к ним Программное определение событий для элементов управления (из Access в Excel) Обработка событий для массива кнопок Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |