powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Контекстное меню...
10 сообщений из 10, страница 1 из 1
Контекстное меню...
    #32525856
AloneWarlock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Пожалуйста объясните, как программно сделать контекстное меню, которое надо повесить на определенное поле и относительно выбронного значения выполнять какую-то процедуру? Голова от мая совсем не варит
...
Рейтинг: 0 / 0
Контекстное меню...
    #32525876
Kelme
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Какая версия Access'а?
...
Рейтинг: 0 / 0
Контекстное меню...
    #32525927
Kelme
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ладна, предположим, что Access2002-2003 (насчёт 2000 и 97 не знаю).
Подкючаешь Microsoft Office XX.0 Object Library
там есть объект CommandBar

вот примерный код (скопировал из своей проги), надеюсь разберёшся что к чему.
Купи Гетца, или достань CD от второго тома, там это подробно расписано ;)
Код: 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.
78.
79.
80.
Dim cbr As CommandBar

Dim WithEvents cbrHistory As CommandBarButton
Dim WithEvents cbrDepozit As CommandBarButton


public sub AAAA()
 Dim qd As DAO.QueryDef
 Dim rst As DAO.Recordset
 Dim x As Long
 Dim Kopa As Single
 Dim cbrButActionDelete As CommandBarButton
 Dim cbrButActionEdit As CommandBarButton
 Dim cbrCaption As CommandBarButton
 Dim cbrBut As CommandBarPopup

        Set qd = CurrentDb.QueryDefs("_GetDebtPaymentsList")
        qd!parUserID = globalContractOperationUserID
        qd!parContractID = globalContractID
        qd!parOperationID = globalContractOperationID
        
        On Error Resume Next
            cbr.ShowPopup
            CommandBars("Debts").Delete
        On Error GoTo  0 
        
        Set cbr = CommandBars.Add("Debts", Position:=msoBarPopup, Temporary:=False)
        
        Set cbrHistory = cbr.Controls.Add(msoControlButton, , ,  1 , True)
        cbrHistory.Caption = "Parada maksajums"
        cbrHistory.FaceId =  1643 
        
        If DebtSum =  0  Then
            cbrHistory.Enabled = False
        Else
            cbrHistory.Enabled = True
        End If
        
        Set rst = qd.OpenRecordset(, dbOpenForwardOnly)
        x =  2 
        Kopa =  0 
        If rst.RecordCount >  0  Then
            Set cbrCaption = cbr.Controls.Add(msoControlButton, , , x, True)
            cbrCaption.Caption = "Parada maksajuma vesture"
            cbrCaption.FaceId =  487 
            cbrCaption.BeginGroup = True
           
            Do While Not rst.EOF
                
                x = x +  1 
                Kopa = Kopa + rst!PaymentSum
                
                Set cbrBut = cbr.Controls.Add(msoControlPopup, , rst!DebtPaymentID, x, True)
                cbrBut.Caption = rst!PaymentDate & "  " & Format(rst!PaymentSum, "0.00") & "Ls  " & IIf(rst!PaymentConfirmed, "+", "-")
              
                Set cbrButActionEdit = cbrBut.Controls.Add(msoControlButton, , rst!DebtPaymentID)
                cbrButActionEdit.Caption = "Rediget"
                cbrButActionEdit.FaceId =  2042 
                cbrButActionEdit.OnAction = "=ActionEdit()"
                cbrButActionEdit.Parameter = rst!DebtPaymentID
                
                Set cbrButActionDelete = cbrBut.Controls.Add(msoControlButton, , rst!DebtPaymentID)
                cbrButActionDelete.Caption = "Dzest"
                cbrButActionDelete.FaceId =  1088 
                cbrButActionDelete.OnAction = "=ActionDelete()"
                cbrButActionDelete.Parameter = rst!DebtPaymentID
                
                rst.MoveNext
                
            Loop
            Set cbrCaption = cbr.Controls.Add(msoControlButton, , - 1 , x +  1 , True)
            cbrCaption.FaceId =  226 
            cbrCaption.Caption = "Kopa:           " & Format(Kopa, "0.00Ls")
            cbrCaption.BeginGroup = True
        End If
a:
        On Error Resume Next
            cbr.ShowPopup
            CommandBars("Debts").Delete
        On Error GoTo  0 
end sub

Вызов этой процедуры вешаешь на MouseDown текстбокса
Код: plaintext
1.
2.
If Button And acRightButton Then
    AAAA
  End If
...
Рейтинг: 0 / 0
Контекстное меню...
    #32526115
AloneWarlock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Сп. большое - попробую сейчас
...
Рейтинг: 0 / 0
Контекстное меню...
    #32526137
Kelme
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Глянь почту, я тебе скинул pdf с описанием работы с меню.
...
Рейтинг: 0 / 0
Контекстное меню...
    #32526252
Hummer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Kelme & AloneWarlock

Может будет интересно посмотреть вот сюда
...
Рейтинг: 0 / 0
Контекстное меню...
    #32526283
Kelme
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
уже внимательно смотрю...
...
Рейтинг: 0 / 0
Контекстное меню...
    #32526299
Фотография АлексейК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
это более точная ссылка

http://kozin1.narod.ru/newsite/index.html?menuhummer.htm
...
Рейтинг: 0 / 0
Контекстное меню...
    #32526342
Hummer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 АлексейК
Спасибо за поправку:)

Готов к пиву на след. неделе, а то задёргался совсем:)
...
Рейтинг: 0 / 0
Контекстное меню...
    #32526366
Фотография АлексейК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Hummer
ответил почтой, нехоршо в топике
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Контекстное меню...
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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