- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
所以,我在 Google 上搜索了一下,似乎在制作自定义弹出菜单时,如果想传递参数,那么这是可能的,但对我来说有两个主要问题:
1) 您调用的函数将会执行,但您将无法在其上激活断点,甚至无法使用 Stop。
2)奇怪的是,它似乎被调用了两次,这也不是很有帮助。
说明代码(请放在模块中,而不是放在工作表中)
Option Explicit
Sub AssignIt()
Dim cbrCmdBar As CommandBar
Dim strCBarName As String
On Error Resume Next
strCBarName = "MyNewPopupMenu"
'Delete it first so multiple runs can occur without appending
Application.CommandBars(strCBarName).Delete
' Create a menu bar.
Set cbrCmdBar = Application.CommandBars.Add(Name:=strCBarName, Position:=msoBarMenuBar)
' Create a pop-up menu.
strCBarName = "MyNewPopupMenu"
Set cbrCmdBar = Application.CommandBars.Add(Name:=strCBarName, Position:=msoBarPopup)
'DEFINE COMMAND BAR CONTROL
With Application.CommandBars(strCBarName).Controls.Add(Type:=msoControlButton)
.Caption = "MyMenu"
.OnAction = BuildProcArgString("MyProc", "A", "B", "C") 'You can add any number of arguments here!
End With
'DEFINE COMMAND BAR CONTROL
With Application.CommandBars(strCBarName).Controls.Add(Type:=msoControlButton)
.Caption = "Test No Args"
.OnAction = "CallWithNoArgs"
End With
Application.CommandBars(strCBarName).ShowPopup
End Sub
Sub CallWithNoArgs()
MsgBox "No Args"
End Sub
'FUNCTION TO BUILD PROCEDURE ARGUMENTS (You just have to plop this in any of your modules)
Function BuildProcArgString(ByVal ProcName As String, ParamArray Args() As Variant)
Dim TempArg
Dim Temp
For Each TempArg In Args
Temp = Temp + Chr(34) + TempArg + Chr(34) + ","
Next
BuildProcArgString = ProcName + "(" + Left(Temp, Len(Temp) - 1) + ")"
End Function
'AND FINALLY - THE EXECUTABLE PROCEDURE!
Sub MyProc(x, y, z)
MsgBox x & y & z
Debug.Print "arrgggh why won't the breakpoint work, and why call twice!!!!!!"
End Sub
如果有人能帮忙解决这个问题,那就太好了。过去似乎有另一个开发人员碰壁了,因此对于 5 个项目,我们有 Method_1 ... Method_5,并将数字传递到 Method_Core(ByVal i As Integer) 样式。我想我也会走这条路,虽然很丑,但它比我下面模拟的效果更好。
PS。这是一个快速模型,因此我不会公开专有代码等最佳答案
您可以使用.Parameter 属性。这是生产中的代码示例(仅包含感兴趣的行):
Dim i As Integer
Set cl = MainForm.Controls("classroomList")
For i = 0 To cl.ListCount - 1
With .Controls.Add(Type:=msoControlButton)
.Caption = cl.List(i)
.faceId = 177
.OnAction = "'" & ThisWorkbook.Name & "'!" & "assignClassroom"
.Parameter = cl.List(i)
End With
Next i
程序可能类似于:
Public Sub assignClassroom(Optional someArg as SomeType)
' code here
CommandBars.ActionControl.Parameter 'The parameter here
' more code here
End Sub
关于带参数的 Excel VBA CommandBar.OnAction 很困难/未按预期执行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5665270/
您好,我在使用 JavaFX 时遇到了一个奇怪的问题,我正在使用 Scene Builder 为您提供的 Controller 。问题是无论菜单栏上的菜单在单击时什么都不做。这是我的 Controll
所以我已经有一段时间了,我已经搜索了很多网站和论坛,但是我找不到解决我的问题的方法。 我正在尝试向 .OnAction 添加参数Checkbox 的事件 所以..例如 Dim chk as Check
我有一本工作簿,用作其他人的模板。模板文档已锁定以供编辑,因此最终用户必须使用其项目的具体信息“另存为”。 此模板包括多个工作表以合并所有可能的布局选项。由于与我一起工作的大多数人既没有经验也不熟悉
有没有办法知道 NavLink 何时处于事件状态?像这样的东西?: 最佳答案 您可以使用 NavLink 的 isActive 回调来实现此目的。 isActive 允许您在链接处于事件状态时定义自
嗯,我的问题是我创建了一个 VBA Sub,它接收一个 excel 单元格引用和 2 个文本值以及一个 Variant 作为参数。 Sub CreateButton(oCell, sLabel, sO
这个问题已经有答案了: javafx 8 compatibility issues - FXML static fields or methods (1 个回答) 已关闭 6 年前。 我是 JavaF
我创建了一个新的自定义控件,其中包含标签、文本字段和按钮。如何在 FXML 文件中设置自定义控件的按钮“onAction”方法? 示例代码: 最佳答案 好的,我找到了解决
我的功能区上有几个按钮(目前只有一个拆分按钮和菜单上的几个按钮)。因此,我可以为操作处理程序选择两种不同的设计模式。 模式 #1(常用方法) public void DoStuff(Office.
我设计了一个 Outlook 2010 加载项,我试图在其中触发(或者更确切地说,捕获)单击按钮时触发的事件,如图所示 in this article .我瞄准了正确的 XML(因为在功能区上可以看到
我正在尝试使用以下宏将 vba 代码分配给形状。 使用代码时出现运行时错误 438“对象不支持此属性或方法” 我的工作表编号总是改变,所以我不能将它硬编码到下面的代码中。 这是我正在使用的代码: Su
有没有办法处理 Chrome 打包的 appWindow 事件/非事件状态?类似这样的事件 onActive 或 onFocus。 最佳答案 AppWindow 不提供此功能,但标准 DOM 窗口通过
背景:我有一本记录奥林匹克举重/历史的工作簿。用户可以通过按下调用宏“New_Lift”和“Create_Button”的按钮(添加新电梯)来创建新电梯。这将创建一个包含电梯名称的新工作表,在主工作表
我是 VBA 新手,正在尝试使用 smartArt.Nodes 基于某些单元格数据动态生成组织结构图。我能够毫无问题地生成图表。现在,我希望能够通过单击图表的特定节点来显示它们的更多详细信息。我知道我
我关注了directions here为 Access 应用程序创建自定义功能区。但所有按钮都不起作用!我不断收到一条错误消息,指出 Access 无法找到该函数或宏,即使它是公共(public)的且
假设您有两个工作簿,一个名为“MyWorkbook”,另一个名为“PatchMyWorkbook”。两个工作簿在保存时都打开。 “PatchMyWorkbook”有一个宏,用于添加按钮并将“MyWor
我遇到了一个特殊的问题,尽管在谷歌上搜索和修补了好几个小时,我还是没能解决这个问题。
我正在尝试创建一种方法,以便在按下 Quit MenuItem 时退出应用程序。 我有以下方法: @FXML public void doExit(ActionEvent event) { P
我有一个自定义功能区,菜单中有多个复选框:
我有一个 FXML 编辑器和一个 Controller ,它在 TreeView 中选择时设置域对象。因此,每次在 TreeView 中选择一个新对象时, Controller 都会解除编辑器中所有控
如何将参数传递给在 Excel VBA 中使用 onAction 事件注册的方法? 我的代码是: With ActiveSheet.CheckBoxes.Add(rCell.Left, rCell.T
我是一名优秀的程序员,十分优秀!