|
|
|
Class Module
|
|||
|---|---|---|---|
|
#18+
Пытаюсь разобраться, как работать с модулями класса. Поискал по форуму - сделал - не получилось. Модуль класса: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. Форма: Код: plaintext 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.01.2005, 00:37:46 |
|
||
|
Class Module
|
|||
|---|---|---|---|
|
#18+
Мне кажется, надо Private WithEvents btn As CommandButton Когда ставишь курсор в btn_click, то сверху в двух комбобоксах должно появиться btn слева и click справа, а не btn_click вместе. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.01.2005, 01:40:50 |
|
||
|
Class Module
|
|||
|---|---|---|---|
|
#18+
Владимир СанычМне кажется, надо Private WithEvents btn As CommandButton Когда ставишь курсор в btn_click, то сверху в двух комбобоксах должно появиться btn слева и click справа, а не btn_click вместе. Теперь все появляется так, как надо, но только эффект остался тот же, то есть при нажатии на кнопку ничего не происходит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.01.2005, 11:13:23 |
|
||
|
Class Module
|
|||
|---|---|---|---|
|
#18+
добавь в Public Property Get CommandButton() As CommandButton строку btn.OnClick = "[Event Procedure]" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.01.2005, 11:24:36 |
|
||
|
Class Module
|
|||
|---|---|---|---|
|
#18+
тьфу ты не в Get а в Set конечно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.01.2005, 11:25:09 |
|
||
|
Class Module
|
|||
|---|---|---|---|
|
#18+
ну всё равно попробуй написать именно так, с большими буквами ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.01.2005, 11:26:41 |
|
||
|
Class Module
|
|||
|---|---|---|---|
|
#18+
sasha_1ну всё равно попробуй написать именно так, с большими буквами Написл "[Event Procedure]" - тот же эффект ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.01.2005, 12:13:58 |
|
||
|
Class Module
|
|||
|---|---|---|---|
|
#18+
ну еще в качестве бредовой идеи: вместо Public поставить Private Private Sub btn_click() MsgBox "adasdadad" End Sub ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.01.2005, 12:28:44 |
|
||
|
Class Module
|
|||
|---|---|---|---|
|
#18+
sasha_1ну еще в качестве бредовой идеи: вместо Public поставить Private Private Sub btn_click() MsgBox "adasdadad" End Sub Не сработало. Хм... Странно это все :( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.01.2005, 12:42:55 |
|
||
|
Class Module
|
|||
|---|---|---|---|
|
#18+
действительно странно. сто раз так делал, проблем не возникало. а в форме ты где пишешь инициализацию? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.01.2005, 12:50:58 |
|
||
|
Class Module
|
|||
|---|---|---|---|
|
#18+
аааа. я кажется понял. ты Dim btn As Class1 где пишешь? небось внутри процедуры? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.01.2005, 12:54:21 |
|
||
|
Class Module
|
|||
|---|---|---|---|
|
#18+
Vsevolod VSet btn = New Class1 Кстати, эта строчка лишняя. Но дело все равно не в этом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.01.2005, 13:03:26 |
|
||
|
Class Module
|
|||
|---|---|---|---|
|
#18+
строчка не лишняя. (имхо) дело видимо в том, что Dim btn As Class1 объявлена внутри процедуры открытия формы и после отрабатывания процедуры все переменные разрушаются. т.е. Dim btn As Class1 должно быть вынесено из процедуры просто в модуль формы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.01.2005, 13:08:27 |
|
||
|
Class Module
|
|||
|---|---|---|---|
|
#18+
Но там идет подряд: Vsevolod VSet btn = New Class1 Set btn.CommandButton = Me.btn1 Зачем два сета подряд, если первый затирается вторым? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.01.2005, 13:11:20 |
|
||
|
Class Module
|
|||
|---|---|---|---|
|
#18+
А. Дошло. Беру свои слова обратно. Там сет один раз переменной, а второй раз ее свойству. Пардон. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.01.2005, 13:12:29 |
|
||
|
Class Module
|
|||
|---|---|---|---|
|
#18+
Отлично! Заработало :) Действительно "Dim btn As Class1" необходимо было вынести из процедуры Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.01.2005, 13:50:49 |
|
||
|
Class Module
|
|||
|---|---|---|---|
|
#18+
Теперь пытаюсь проделать тоже самое с лейблом (только в этом случае обрабатываю событие OnMouseDown) Текст модуля класса Код: plaintext 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. Код: plaintext 1. 2. 3. 4. 5. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.01.2005, 23:41:33 |
|
||
|
Class Module
|
|||
|---|---|---|---|
|
#18+
Vsevolod VТак вот проблема в том, что если лейбл привязан к текстбоксу то на указанной строке возникает ошибка: Object or class does not support the set of events. В остальных же случаях все работает нормально Если лейбл привязан к текстбоксу, то вроде и обычным способом таких событий нет, не только через классы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.01.2005, 23:53:47 |
|
||
|
Class Module
|
|||
|---|---|---|---|
|
#18+
Видать в этом случае лейбл наледует события от текстбокса. Тогда возникает другой вопрос :) А как программно определить привязан лейбл к текстбоксу или нет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.01.2005, 00:15:00 |
|
||
|
Class Module
|
|||
|---|---|---|---|
|
#18+
Vsevolod VА как программно определить привязан лейбл к текстбоксу или нет? typename(ctl.parent) вернет либо "TextBox", либо "Form_имяформы". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.01.2005, 00:18:39 |
|
||
|
Class Module
|
|||
|---|---|---|---|
|
#18+
Что такое?! :( Не могу добавить вопрос с текстом кода. Появляется ошибка: ... возможно закончилась сессия. Попробуйте зайте в форум заново ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2005, 20:45:29 |
|
||
|
Class Module
|
|||
|---|---|---|---|
|
#18+
Модуль класса: Код: plaintext 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. Код: plaintext 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. 1. На форме две сабформы. В первой на лэйблах появляется соответствующее контекстное меню, а во второй нет. 2. При открытии новой формы и запуске этого кода теряются настройки лэйблов для уже открытых форм. Пробовал объявить ColсLbls и как Global и как Public - ничего не помогает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2005, 21:51:47 |
|
||
|
Class Module
|
|||
|---|---|---|---|
|
#18+
3 часа работы и сам разобрался :) --- Теперь есть вопрос по поводу коллекций. Как видно из кода, я создаю коллекцию лэйблов. Тут я столкнулся с проблемой того, что существует масса лэйблов с одинаковыми наименованиеми - отсюда ошибка: The key is already associatied with an element of this collection. Посмотрел справку (в коллекциях я не силен) - ничего дельного не нашел. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2005, 13:59:54 |
|
||
|
|

start [/forum/topic.php?fid=45&msg=32853943&tid=1669309]: |
0ms |
get settings: |
6ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
83ms |
get topic data: |
9ms |
get forum data: |
3ms |
get page messages: |
56ms |
get tp. blocked users: |
1ms |
| others: | 224ms |
| total: | 403ms |

| 0 / 0 |
