powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Кто-нить знает?
31 сообщений из 31, показаны все 2 страниц
Кто-нить знает?
    #32154000
pv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как создать контестное(всплывающее) меню, на нажатие правой кнопки мыши при нажатии на определенную запись на ленточной форме, с получением всех данных записи?
...
Рейтинг: 0 / 0
Кто-нить знает?
    #32154010
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Чтобы создать контекстное меню, надо нажать клавишу F1 и ввести в Мастер ответов текст "создание контекстного меню". Одна из найденных ссылок будет содерджать следующее

Код: 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.
Создание пользовательского контекстного меню для текущей базы данных 
Access или проекта Access
В меню Вид выберите команду Панели инструментов и подкоманду Настройка.

На вкладке Панели инструментов нажмите кнопку Создать.

В поле Панель инструментов введите нужное имя и нажмите кнопку OK.

На вкладке Панели инструментов нажмите кнопку Свойства.

В списке Тип выберите Контекстное меню.

Установите или снимите флажок настройка и нажмите кнопку Закрыть. 
Контекстное меню будет добавлено на панель инструментов Контекстные 
меню, с помощью которой настраиваются все контекстные меню. 

На вкладке Панели инструментов в списке Панели инструментов выберите 
панель Контекстные меню.

На панели инструментов Контекстные меню выберите категорию Настраиваемая.

Для завершения создания меню выполните следующие действия. 
Добавьте команды из диалогового окна Настройка. Для получения 
дополнительных сведений нажмите кнопку .


Переместите или скопируйте команды из других меню. Для получения 
дополнительных сведений нажмите кнопку . 

Примечания   

Microsoft Access поддерживает макросы меню для приложений, созданных в 
предыдущих версиях Microsoft Access. Для получения дополнительных 
сведений нажмите кнопку .

Можно присоединить пользовательское контекстное меню к форме, отчету или 
элементу управления. Для получения дополнительных сведений нажмите 
кнопку . Либо, можно сделать контекстное меню глобальным контекстным 
меню. Для получения дополнительных сведений нажмите кнопку . 

...
Рейтинг: 0 / 0
Кто-нить знает?
    #32154127
pv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Так и не смог разобраться как создать всплывающее меню и как его отображать, да и такого текста у меня в хелпе нет.
...
Рейтинг: 0 / 0
Кто-нить знает?
    #32154136
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>Так и не смог разобраться как создать всплывающее меню
Какая конкретная строчка из приведеного хелпа вызывает затруднение?

> и как его отображать,
У контролов и самой формы есть свойство - Контекстное меню.
...
Рейтинг: 0 / 0
Кто-нить знает?
    #32154145
pv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вроде разобрался с тем, чтобы было контекстное меню, необходимо создать свою панель инструментов, но вот что не могу пока понять:
Мне нужны два своих пункта
1. как их добавить?
2. Как отследить был ли нажат один из них?
...
Рейтинг: 0 / 0
Кто-нить знает?
    #32154155
pv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как создать - разобрался.
Как добавить - разобрался.
как создать свои пункты, тоже разобрался.
Теперь подскажите, пожалуйста:
1. Почему навожу на них, а они представляются как пустые подменю?
2. Как обработать выбор одного из них, скажем есть два пункта и две формы, как на одном из них открывать одну форму а на втором - другую????
...
Рейтинг: 0 / 0
Кто-нить знает?
    #32154162
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>1. как их добавить?

Ручками (Файл-Специальная для обычного или Новое меню-Новое меню - для выпадающего, все это на вкладке Команды) или копированием Акесных готовых меню. После чего задаешь имена, свойства, рисонки, реакцию на действие

2. Как отследить был ли нажат один из них?

Если меню статично (например, запуск какой-либо операции), то создаешь глобальную функцию (Public Fucntion ИМЯ_ФУНКЦИИ ) и в поле Действие пишешь: =ИМЯ_ФУНКЦИИ(). Можно и макросы использовать.

Что бы отслеживать нажатие, надо подключать библиотеку Микрософт офис объект либлари. Создавать глобальную переменную с WithEvents и отслеживать нужные тебе события. В справке есть примеры. Посмотри объектную модель этой библиотеки.
...
Рейтинг: 0 / 0
Кто-нить знает?
    #32154193
pv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну если детальнее:
Мне например нужно это для ленточной форме, для обработки записи, т.е. при выборе одного из пунктов, чтобы открылась форма, с переданными ей некорыми полями записи над которой был курсор.
Как это можно реализовать?
...
Рейтинг: 0 / 0
Кто-нить знает?
    #32154209
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Детальней, что?
Как найти свойстыо Контекстное меню, как написать Функцию на VBA для разбора данных из подчиненой формы?
...
Рейтинг: 0 / 0
Кто-нить знает?
    #32154218
pv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как перехватить событие нажатия меню, и в этот момент я могу узнать какая запись активированна?
...
Рейтинг: 0 / 0
Кто-нить знает?
    #32154223
pv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В Visual C++ например задаешь id объекта, ну а потом и события не сложно добавить, в аксесе такое можно.
И как можно сделать всплытие меню на левую клавишу?
...
Рейтинг: 0 / 0
Кто-нить знает?
    #32154232
Фотография АлексейК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Даже неприлично ...

сказали же

1. создаешь контекстное меню - чтоб было что вызывать

2. в режиме конструктора нужному элементу управления задаешь свойство - название этого контекстного меню

ЧЕГО НЕ ПОНЯТНО ?
...
Рейтинг: 0 / 0
Кто-нить знает?
    #32154263
pv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 АлексейК

Ну а как, например, его вызывать на нажате левой кнопки?
...
Рейтинг: 0 / 0
Кто-нить знает?
    #32154267
pv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Или события его обработать?
...
Рейтинг: 0 / 0
Кто-нить знает?
    #32154274
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>И как можно сделать всплытие меню на левую клавишу?

см. PopUp.

А вообще-то контекстные меню принято вызывать по нажатию правой кнопик мыши. Но, это так, к слову.
...
Рейтинг: 0 / 0
Кто-нить знает?
    #32154276
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пардон, не PopUp, ShowPopup
Типа, CommandBars("menuServis").ShowPopup
...
Рейтинг: 0 / 0
Кто-нить знает?
    #32154324
pv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а можно по подробнее, о том как нажатый пункт получить.
Извените, что тяжело со мной, но трудно диплом писать, одновременно изучая и SQL Server и VBA с Access, да и сроки поджимают.
...
Рейтинг: 0 / 0
Кто-нить знает?
    #32154330
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А зачем тебе событие отлавливать?
Просто напиши публик функцию на запуск того, чего тебе надо и подставь ее а Действие. Если нужен како-нить хитрый алгоритм, так и отслеживай его в этой функции.

З.Ы.
Что за институт , где сиквел с акесом мучают?
...
Рейтинг: 0 / 0
Кто-нить знает?
    #32154352
pv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В кратце сейчас опишу что мне надо, может тогда идею подкините.
Я в ленточной форме вывожу остатки товара, что на руках(база по складу и операциях между складом, поставщиками и реализаторами)
После чего хочу чтобы пользователь БД мог ввестм какое-то количество товара оплаченого или возвращенного, к слову для этого служат две раздельные таблицы. Хочу это сделать след образом:
Пользователь нажимает правую или левую клавишу мыши(что в принципе не принципиально, главное, чтоб прогить это было проще) и появляется всплывающее меню со строками оплатить и вернуть, после чего открывается соответствующее окно и пользователь вносит то что необходимо для каждого из случаев.
...
Рейтинг: 0 / 0
Кто-нить знает?
    #32154371
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно ссылаться на поля ленточной формы как Forms!MainForm1!SubForm![НекоеПоле]. Вот в функции (или Оплата или Возврат) и смотри все нужные поля, открывай другие формы и делай что нужно.
Меню ты уже создал, функции создал. Все


>Пользователь нажимает правую или левую клавишу мыши(что в принципе не принципиально, главное, чтоб прогить это было проще)

"Прогить" надо на правую кнопку - ее вообще не надо нигде описывать, только указав свойство КонтекстноеМеню.
...
Рейтинг: 0 / 0
Кто-нить знает?
    #32154376
pv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Senin Viktor
Об универе:
SQL не мучают, просто диплом такой выбрал, база данных склада, сервер ни сиквел, клиент - аксес, руководитель в восторге, а я мучаюсь.
...
Рейтинг: 0 / 0
Кто-нить знает?
    #32154380
pv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
На левую кнопку если прогить срабатывает еще и CurrentRecord а срабатывает ли это событие при нажатии на левую кнопку?
...
Рейтинг: 0 / 0
Кто-нить знает?
    #32154388
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
CurrentRecord срабатывает даже вообще без мышки :))
Тебе диплом в этом году защищать? Это я к тому что можешь не успеть с такими глубокими познаниями...
...
Рейтинг: 0 / 0
Кто-нить знает?
    #32154392
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да какая разница какая кнопка у мыши нажата. На фига тебе событие ТекущаяЗапись?
Просто запуститься функция, которая посмотрит значения выделенной записи в ленточной форме и откроет соотвествующую форму для ввода выбития материалов. Проблема у тебя сейчас/конкретно/в настоящее время какая?
...
Рейтинг: 0 / 0
Кто-нить знает?
    #32154407
pv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мне нужно, что бы он срабатывал при нажатии на мышь на запись, но на левую клавишу это не происходит, поэтому выход один - на правую если нужно что бы меню появилось сразу или на левую жать после правой или вообще без меню а кинуть два button'а и при нажатии на одну из них делать то что нужно, но мне тогда просто не нравится интерфейс, хотя так будет проще.
...
Рейтинг: 0 / 0
Кто-нить знает?
    #32154409
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А вообще хороший вопрос был:
Код: plaintext
1.
при нажатии на левую кнопку срабатывает событие...
а срабатывает ли событие при нажатии на левую кнопку?

То веб-дизайнеры забредут, то бешеные програмисты на висипипи....
...
Рейтинг: 0 / 0
Кто-нить знает?
    #32154411
pv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это о событии CurrentRecord, oно происходит например на нажатии правой кнопки, а если запись не выделена, то при нажатии правой клавищи это событие не срабатывает, а, следовательно, я не могу получить ту запись, с которой хотят работать.
...
Рейтинг: 0 / 0
Кто-нить знает?
    #32154412
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ты считаешь что это нормально, когда пользователь тыкает мышью по записям, а ему в ответ выпадающие не нужные меню. Если, Да, то у каждого элемента есть событие нажатиеКнопки - его используй для ShowPopUp
...
Рейтинг: 0 / 0
Кто-нить знает?
    #32154421
pv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Senin Viktor
Согласен, что это не нужно. Может мне тогда вообще голову не морочить, а разместить две кнопочки на каждый рекорд "оплатить" и "вернуть"?
...
Рейтинг: 0 / 0
Кто-нить знает?
    #32154433
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Что-то ты pv меня в конец запутал.
Есть контекстное меню, которое назначено всем элементам нужным подчиненой формы. Когда ты щелкаешь правой кнопкой на этом элементе, то запускается соответствующая функция, которая может просмотреть значения ленточной формы и открыть соответсвующую форму.

Код: plaintext
1.
                                            ЧТО НЕ ПОЛУЧАЕТСЯ?
...
Рейтинг: 0 / 0
Кто-нить знает?
    #32154437
pv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Что-то и сам я запутался, наверное надо все попробовать еще раз, а затем спрашивать, да есть еще один вопрос, можно как-нить другим цветом например выделить текущую запись на ленточной форме? Или может это в новое добавить для обсуждения?
Спасибо за ваши муки со мной, еще раз все попробую и обдума.
...
Рейтинг: 0 / 0
31 сообщений из 31, показаны все 2 страниц
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Кто-нить знает?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]