|
|
|
теоритический вопрос по классам
|
|||
|---|---|---|---|
|
#18+
Возможно я не до конца понимаю теорию классов. Подскажите кто знает. По идее формы, отчеты это встроенные классы аксесса можно ли написать свой, пользовательский класс функционально аналогичный аксессовской форме? дополнить его возможностью назначать событие секции onformat ? )) идея в том чтобы разрабатывать формы в удобном аксессовском конструкторе а открывать их своим более функциональным классом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2003, 10:09 |
|
||
|
теоритический вопрос по классам
|
|||
|---|---|---|---|
|
#18+
Не понятно что именно ты с формой делать хочешь, но у меня на всех формах есть ссылка на класс, управляющий поведением формы (ресайзинг, перевод на др. язык, форматирование элементов, вызовы меню, удаление/добавление и т.п.). Для форм-журналов: заполнение данными, поиск, сортировка, удаление/добавление, печать, форматирование ЛистВью, перехват нажатия клавиш, обработка событий как формы так и отдельных ее элементов) Но это не то? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2003, 10:25 |
|
||
|
теоритический вопрос по классам
|
|||
|---|---|---|---|
|
#18+
Насколько я понимаю... в твоем варианте модуль класса наверняка использует в качестве исходного объекта стандартную форму к которой нельзя добавить свои события такие как событие форматирование секции ленточной формы или можно? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2003, 10:31 |
|
||
|
теоритический вопрос по классам
|
|||
|---|---|---|---|
|
#18+
не по основной теме, но все равно а можно где - нить посмотреть примерчик класса формы для работы с менюшками и ресайзингом ? интересно посмотреть как организовано... обработчики то к менюшкам должны быть у каждой формы свои... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2003, 10:41 |
|
||
|
теоритический вопрос по классам
|
|||
|---|---|---|---|
|
#18+
2 АлексейК Ну как я понимаю, просто классу на вход будет подаваться форма (Me), а уж в классе, в зависимости от типа формы, можно сделать что угодно.... Так Виктор и написал уже... Можно и события форматирования добалять - но только в мдб, иначе без перевода формы в режим конструктора ты ничего не добавишь, можно только дизаблить сущ. код - просто убирая [Event Procedure] в указанном событии, но добавлять код на форму не получится... Или я совсем не о том? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2003, 10:43 |
|
||
|
теоритический вопрос по классам
|
|||
|---|---|---|---|
|
#18+
>которой нельзя добавить свои события такие как событие форматирование секции ленточной формы Добавить событие достаточно просто Private WithEvents mSearch As TextBox ' Объявили ... при инициализации: Set mSearch = mForm(cSearchTextBoxName) ' присвоили mSearch.AfterUpdate = "[Event Procedure]" ' пределили событие И пишем Private Sub mSearch_AfterUpdate() Msgbox "Труля-ля" End sub для формы mForm.OnKeyUp = "[Event Procedure]" >в твоем варианте модуль класса наверняка использует в качестве исходного объекта стандартную форму Форма стандартная (но и их много, даже верней сказать - они однотипные). Созданнны простым копирование (я не стал заморачиваться с 1 формой, которая все умеет) Просто в событие Form_Load я задаю необходимые свойства класса. Если, например, не хочу иметь возможность поиска, то не инициализирую переменную cSearchTextBoxName. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2003, 10:43 |
|
||
|
теоритический вопрос по классам
|
|||
|---|---|---|---|
|
#18+
2Hummer >Можно и события форматирования добалять - но только в мдб, Под форматированием я имелл виду: один шрифт,цвет, размер шрифта, цвет фона формы, цвет формы контролов и т.п. для определнного типа контрола (тектбокс, кнопка, ListView) (достали юзера, которые хотят формочку по вводу данных ХХХ красненькую, а YYY - cbytymre. - пусть сами теперь раскрашивают, художники, млин)это можно делать и mde/ade. Контролов-то новых я не создаю 2АлексейК >а можно где - нить посмотреть примерчик класса формы для работы с менюшками и ресайзингом ,интересно посмотреть как организовано... обработчики то к менюшкам должны быть у каждой формы свои... Ты будешь смеяться - но ресайзинг из Гетца (с доработками по деинициализации его класса и обработкой List/TreeView). Правда меню (контекстыне) я создаю ручками, и просто их вызываю (но, есно, это делать можно и программно) - фо-первых удобно проектировать, во-вторых: все-равно меняю все в одном месте - но только не в коде класса, в конструкторе меню ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2003, 10:51 |
|
||
|
теоритический вопрос по классам
|
|||
|---|---|---|---|
|
#18+
2 Senin Viktor Это всё пишется в модуле класса, а не формы? 2 АлексейК Обработчик у менюшек может быть один для всех. Есть свойство ActionControl, но вот дальше должны быть описаны функции в проекте, которые будут вызывать из этого обработчика.... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2003, 10:52 |
|
||
|
теоритический вопрос по классам
|
|||
|---|---|---|---|
|
#18+
2 Senin Viktor , Hummer что касается добавления ВСТРОЕННЫХ событий для объектов которые withevents - тут все ясно. как активизировать событие объекта access.section onformat ? оно недоступно в формах но доступно в отчетах. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2003, 10:55 |
|
||
|
теоритический вопрос по классам
|
|||
|---|---|---|---|
|
#18+
2Hummer >Это всё пишется в модуле класса, а не формы? Да. В модуле класса. В моделе формы только объявлянная переменная, ее инициализация (задания всяких разных свойств) на событие Form_load и ее деинициализация на Form_Close ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2003, 10:56 |
|
||
|
теоритический вопрос по классам
|
|||
|---|---|---|---|
|
#18+
>как активизировать событие объекта access.section onformat ? >оно недоступно в формах но доступно в отчетах Так же как и для формы. Или я чего-то не допонял? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2003, 10:58 |
|
||
|
теоритический вопрос по классам
|
|||
|---|---|---|---|
|
#18+
2 Senin Viktor Уже понял, просто невнимательно прочитал сообщение:) 2 АлексейК Ну можно же вот так попробовать: Public WithEvents rpt As Report With rpt .Section(1).OnFormat End With Но это только в теории... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2003, 11:04 |
|
||
|
теоритический вопрос по классам
|
|||
|---|---|---|---|
|
#18+
так? а не будет ругаться что такого события у секции нет? Private WithEvents SEC As section ... при инициализации: Set SEC = mForm.section(0) SEC.onFormat = "[Event Procedure]" Private Sub SEC_onFormat() Msgbox "Труля-ля" End sub ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2003, 11:06 |
|
||
|
теоритический вопрос по классам
|
|||
|---|---|---|---|
|
#18+
то есть хочу OnFormat для ФОРМЫ не для отчета ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2003, 11:09 |
|
||
|
теоритический вопрос по классам
|
|||
|---|---|---|---|
|
#18+
Ну нету у формы события OnFormat. Не-ту. Если хочешь - делай свое событие. Выбрасывай его где хочешь, лови его где хочешь. Правда я не уверен что так получится, но попробовать можно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2003, 11:21 |
|
||
|
теоритический вопрос по классам
|
|||
|---|---|---|---|
|
#18+
ЛП есть версия как можно поймать такое событие? что - нибудь из winapi ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2003, 11:25 |
|
||
|
теоритический вопрос по классам
|
|||
|---|---|---|---|
|
#18+
В форме пишешь Код: plaintext 1. 2. 3. 4. Правда я не понимаю что ты понимаешь под форматом формы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2003, 11:39 |
|
||
|
теоритический вопрос по классам
|
|||
|---|---|---|---|
|
#18+
Правда, чтоб ловить такое событие надо описывать переменную явно указывая тип, т.е. Private frm As Form_ Форма1 Что не есть гуд. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2003, 11:42 |
|
||
|
теоритический вопрос по классам
|
|||
|---|---|---|---|
|
#18+
Я так понял что АлексейК хочет получить доступ к функции окна, обрабатывающей все приходящие сообщения. Если это так... В современных "средствах" визуального программирования класс формы как раз ис крывает от нас все эти WinAPI фичи, как создание окна с заданием кучи свойств в функ. CreateWindow и т.д., а главное функцию обработчик сообщений. Нам как программистам показывают только некоторые из приходящих окну/форме сообщений, тогда как остальные обрабатываются по умолчанию. Однако, у нас есть возможность заменить функ. окна по умолч. на свою - это называется subClassing. Мы просто заменяем на свою функцию, получаем все сообщения, обрабатываем их как хотим, а потом передаем их функции окна по умолч. - мы же не хотим обрабатывать все сообщения (например такая геморойная как перерисовка и т.д.), пусть и теперь и он поработает. А если мы какое-нибудь сообщение не передадим, то о нем окно ничего и не узнает - такой вот способо перехвата/блокировки сообщений Пример: Код: 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. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2003, 12:23 |
|
||
|
теоритический вопрос по классам
|
|||
|---|---|---|---|
|
#18+
2SergeySV subClassing форм Акеса у меня лично получался только через создания отдельно подключаемых dll. Иначе Акес глючило, колбасило, постоянно прибегал доктор Ватсон. И что более всего бесит - это случается не постоянно 2АлексейК ЛП писалПравда я не понимаю что ты понимаешь под форматом формы. Все-таки ответь на вопрос ЛП. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2003, 12:42 |
|
||
|
теоритический вопрос по классам
|
|||
|---|---|---|---|
|
#18+
2 Виктору и ЛП под форматом формы я понимаю то же самое что и в формате раздела отчета - вывод контрола в конкрентой записи ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2003, 12:49 |
|
||
|
теоритический вопрос по классам
|
|||
|---|---|---|---|
|
#18+
>под форматом формы я понимаю то же самое что и в формате раздела отчета - вывод контрола в конкрентой записи А записи находятся в ленточной форме? Если Да, то твой вопрос сводиться к форматированию ленточных форм ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2003, 13:06 |
|
||
|
теоритический вопрос по классам
|
|||
|---|---|---|---|
|
#18+
именно так. альтернатива условному форматированию ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2003, 13:07 |
|
||
|
теоритический вопрос по классам
|
|||
|---|---|---|---|
|
#18+
Тогда я пас - я от ленточных форм отказался (а сложность условного форматирования оных была одним из поводов) Использую сторонние компоненты (ListView) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2003, 13:11 |
|
||
|
|

start [/forum/topic.php?fid=45&fpage=1710&tid=1677813]: |
0ms |
get settings: |
11ms |
get forum list: |
18ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
63ms |
get topic data: |
14ms |
get forum data: |
4ms |
get page messages: |
78ms |
get tp. blocked users: |
2ms |
| others: | 239ms |
| total: | 437ms |

| 0 / 0 |
