Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Кто-нить знает? / 25 сообщений из 31, страница 1 из 2
06.05.2003, 10:18
    #32154000
pv
pv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кто-нить знает?
Как создать контестное(всплывающее) меню, на нажатие правой кнопки мыши при нажатии на определенную запись на ленточной форме, с получением всех данных записи?
...
Рейтинг: 0 / 0
06.05.2003, 10:27
    #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
06.05.2003, 12:04
    #32154127
pv
pv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кто-нить знает?
Так и не смог разобраться как создать всплывающее меню и как его отображать, да и такого текста у меня в хелпе нет.
...
Рейтинг: 0 / 0
06.05.2003, 12:09
    #32154136
Senin Viktor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кто-нить знает?
>Так и не смог разобраться как создать всплывающее меню
Какая конкретная строчка из приведеного хелпа вызывает затруднение?

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

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

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

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

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

сказали же

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

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

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

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

см. PopUp.

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

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


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

"Прогить" надо на правую кнопку - ее вообще не надо нигде описывать, только указав свойство КонтекстноеМеню.
...
Рейтинг: 0 / 0
06.05.2003, 14:52
    #32154376
pv
pv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кто-нить знает?
2 Senin Viktor
Об универе:
SQL не мучают, просто диплом такой выбрал, база данных склада, сервер ни сиквел, клиент - аксес, руководитель в восторге, а я мучаюсь.
...
Рейтинг: 0 / 0
06.05.2003, 14:55
    #32154380
pv
pv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кто-нить знает?
На левую кнопку если прогить срабатывает еще и CurrentRecord а срабатывает ли это событие при нажатии на левую кнопку?
...
Рейтинг: 0 / 0
06.05.2003, 14:59
    #32154388
Лох Позорный
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кто-нить знает?
CurrentRecord срабатывает даже вообще без мышки :))
Тебе диплом в этом году защищать? Это я к тому что можешь не успеть с такими глубокими познаниями...
...
Рейтинг: 0 / 0
06.05.2003, 15:02
    #32154392
Senin Viktor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кто-нить знает?
Да какая разница какая кнопка у мыши нажата. На фига тебе событие ТекущаяЗапись?
Просто запуститься функция, которая посмотрит значения выделенной записи в ленточной форме и откроет соотвествующую форму для ввода выбития материалов. Проблема у тебя сейчас/конкретно/в настоящее время какая?
...
Рейтинг: 0 / 0
06.05.2003, 15:10
    #32154407
pv
pv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кто-нить знает?
Мне нужно, что бы он срабатывал при нажатии на мышь на запись, но на левую клавишу это не происходит, поэтому выход один - на правую если нужно что бы меню появилось сразу или на левую жать после правой или вообще без меню а кинуть два button'а и при нажатии на одну из них делать то что нужно, но мне тогда просто не нравится интерфейс, хотя так будет проще.
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Кто-нить знает? / 25 сообщений из 31, страница 1 из 2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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