|
|
|
Инициирование событие из класса модуля
|
|||
|---|---|---|---|
|
#18+
Хочу создать реакцию на кнопку не в форме, а из класса модуля. Пишу для примера так: Dim cFrm As Form1 Dim WithEvents cmd As CommandButton Private Sub Class_Initialize() Set cFrm = New Form1 Load cFrm Set cmd = cFrm.Command1 Set txt = cFrm.Text1 End Sub Private Sub Class_Terminate() Set cFrm = Nothing Set cmd = Nothing End Sub Private Sub cmd_Click() MsgBox "test" End Sub т.е создаю экземпляр формы, на ней кнопку и перехватываю ее событие Click. Просто запускаю на выполнение. Форма с кнопкой рисуются, но при нажатии на кнопку - ничего. Чего не хватает? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.02.2005, 10:31:18 |
|
||
|
Инициирование событие из класса модуля
|
|||
|---|---|---|---|
|
#18+
делай все по порядку объяви cmd, txt cmd_Click() - где вызываешь? ты ведь не в форме, и потом - сама форма - экземпляр класс form, вот и работай с ней как с классом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.02.2005, 10:41:16 |
|
||
|
Инициирование событие из класса модуля
|
|||
|---|---|---|---|
|
#18+
Так я в модуле класса объявляю: Dim WithEvents cmd As CommandButton Потом в Initialize класса загружаю экземпляр формы и я так думаю, что экземпляр кнопки. Set cFrm = New Form1 Load cFrm Set cmd = cFrm.Command1 И еще пишу реакцию на событие Click. И думаю, что когда вижу при запуске форму на мониторе и кликаю по кнопке, то должна срабатывать моя реакция, т.е выдаваться msgbox. Я неправильно понимаю? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.02.2005, 10:57:23 |
|
||
|
Инициирование событие из класса модуля
|
|||
|---|---|---|---|
|
#18+
TannyИ думаю, что когда вижу при запуске форму на мониторе и кликаю по кнопке, то должна срабатывать моя реакция, т.е выдаваться msgbox. Я неправильно понимаю? Из вашего примера не видно как вы создаете экземпляр класса. Похоже, что он не создается вообще, а форму вы видите потому, что по умолчанию в новом Exe проекте она выставляется как Startup объект. Попробуйте следующее. 1 Новый Exe проект, форма Form1 создается по умолчанию, на форму положите кнопку. 2 Добавляете новый класс Class1, в который копируете след. код: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. Код: plaintext 1. 2. 3. 4. 5. 5 Запускаете ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.02.2005, 12:39:55 |
|
||
|
|

start [/forum/topic.php?fid=60&msg=32930560&tid=2168184]: |
0ms |
get settings: |
8ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
40ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
42ms |
get tp. blocked users: |
1ms |
| others: | 243ms |
| total: | 366ms |

| 0 / 0 |
