如何在 VB NET 中将方法名称作为过程的参数传递

2023-11-21

我想创建一个过程,它的参数也是一个过程。是否可以?
我创建了一些用作以下参数的过程:

Private Sub Jump(xStr as string)
    Msgbox xStr & " is jumping."
End Sub

Private Sub Run(xStr as string)
    Msgbox xStr & " is jumping."
End Sub

这个过程应该调用上面的过程:

Private Sub ExecuteProcedure(?, StringParameter) '- i do not know what to put in there
     ? ' - name of the procedure with parameter
End Sub

usage:

 ExecuteProcedure(Jump, "StringName")
 ExecuteProcedure(Run, "StringName")

我相信以下代码是您需要的示例。

Public Delegate Sub TestDelegate(ByVal result As TestResult)

Private Sub RunTest(ByVal testFunction As TestDelegate)

     Dim result As New TestResult
     result.startTime = DateTime.Now
     testFunction(result)
     result.endTime = DateTime.Now

End Sub

Private Sub MenuItemStartTests_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItemStartTests.Click

     Debug.WriteLine("Starting Tests...")
     Debug.WriteLine("")
     '==================================
     ' Add Calls to Test Modules Here

     RunTest(AddressOf Test1)
     RunTest(AddressOf Test2)

     '==================================

     Debug.WriteLine("")
     Debug.WriteLine("Tests Completed")

End Sub

整篇文章可以在以下位置找到:http://dotnetref.blogspot.com/2007/07/passing-function-by-reference-in-vbnet.html

希望这可以帮助。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 VB NET 中将方法名称作为过程的参数传递 的相关文章

  • Emacs Lisp 可以将 lambda 形式分配给像Scheme 这样的变量吗?

    在研究 Emacs Lisp 的符号单元时 我发现像这样的示例函数 defun a rest x x 我可以打电话 symbol function a 返回 lambda rest x x 如果我愿意的话我可以使用它 gt lambda r
  • 自调用函数未定义

    如果我声明一个函数文字 var x function alert hi console log x returns the function code However var x function alert hi console log
  • 通过 VB.NET 创建/编辑文本文件

    如何在 VB NET 中编写以下算法的代码 Procedure logfile if C textfile txt exist then open the textfile else create the textfile end if g
  • 如何创建不返回任何内容的函数

    我想写一个函数pl pgsql 我在用着Postgres 企业管理器 v3并使用 shell 来创建一个函数 但在 shell 中我必须定义返回类型 如果我不定义返回类型 我将无法创建函数 如何创建一个不返回结果的函数 即创建一个新表的函数
  • 如何打开 Windows 资源管理器窗口并选择特定文件夹

    我有一个 winform 应用程序 这个 winform 应用程序创建了几个文件 我想在我的应用程序中实现 查找目标 功能来显示这些文件 这些文件位于同一文件夹中 看图片 假设我创建了几个文件 C Test 文件夹 该文件夹包含以下文件 C
  • 时间:2019-03-17 标签:c#backgroundworker和partialclass

    我在实现从堆栈溢出获得的代码时遇到问题 它是关于终止后台工作进程的 我的代码如下 using System using System Collections Generic using System Data using System Dr
  • 项目:为了评估索引属性,该属性必须经过限定,并且参数必须由用户显式提供。

    我创建了多个组合框 从中我从创建的存储过程中提取了每个组合框的数据 所有这些框一直工作到今天早些时候 其中 2 个组合框停止工作 检查行的 立即窗口 和列 我得到了列的结果 但是当我检查列时 例如 dsContactTitles Table
  • 检查 DBNull 会引发 StrongTypingException

    我正在使用数据集从数据库中提取数据 一行中的一个字段是NULL 我知道这个 但是 以下 vb net 代码会抛出StrongTypingException 在数据集设计器中自动生成的 get SomeField 方法中 If Not IsD
  • C++:如何从函数返回shared_ptr

    当尝试从函数返回shared ptr时 我得到 对局部变量 recipe 的引用返回 Werror return local addr 我哪里做错了 shared ptr
  • 设置国际货币格式

    我有一个 asp net 应用程序 我们正在 全球化 过程中 我将 currentculture 和 currentUICultre 设置为适当的值 并且货币按预期使用货币格式显示 即 FormatCurrency nPrice 产生 en
  • 为什么需要在 Python 方法中显式使用“self”参数? [复制]

    这个问题在这里已经有答案了 当在 Python 中的类上定义方法时 它看起来像这样 class MyClass object def init self x y self x x self y y 但在其他一些语言中 例如 C 您可以使用
  • Outlook 加载项,无法读取未定义的属性“BeginRequestEventArgs”

    我使用 Visual Studio 开发了 Outlook 插件 我的插件有一个按钮 用于填充会议邀请正文中的详细信息并添加所需的与会者 这在 99 的情况下都有效 但是 时不时地它会给我下面的 JavaScript 错误 Uncaught
  • 将数组作为参数传递

    如果我们修改作为方法内参数传递的数组的内容 则修改是在参数的副本而不是原始参数上完成的 因此结果不可见 当我们调用具有引用类型参数的方法时 会发生什么过程 这是我想问的代码示例 using System namespace Value Re
  • 在 plpgsql 函数中使用 quote_ident()

    我是创建 plpgsql 函数的新手 我需要一些有关在函数内部执行的动态命令上使用 quote ident 甚至 quote literal 的说明 希望有人能给我一个关于它们如何在函数内部工作的具体解释 TIA 这是一个例子 EXECUT
  • 使用函数更改指针包含的地址

    如果我声明了一个指针p as int p 在主模块中 我可以更改包含的地址p通过分配p a where a是另一个已经声明的整型变量 我现在想通过使用以下函数来更改地址 void change adrs int q int newad q
  • 如何在VB函数中添加可选参数/默认值参数?

    如何在 Visual Basic 中创建一个包含可选参数的方法 Use the Optional关键字并提供默认值 可选参数必须是最后定义的参数 以避免创建不明确的函数签名 Sub MyMethod ByVal Param1 As Stri
  • 在 Angular 材质表上调用 renderRows()

    我试图在更新表中使用的数据后刷新我的 Angular 表 文档说 您可以通过调用其 renderRows 方法来触发对表的渲染行的更新 但它不像普通的子组件 我可以使用 ViewChild MatSort sort MatSort 因为我不
  • 数据读取过程中遇到致命错误

    我正在进行定期更新表扫描 Using connect1 As New MySqlConnection ConnectLocalhost serverString connect1 Open Dim cmd New MySqlCommand
  • 聚合函数在数据框中创建不需要的向量

    我在函数中创建数据帧时遇到了一个奇怪的问题 但是 在 data frame 之外使用相同的方法效果很好 这是基本函数 我用它来计算数据集的平均值 标准差和标准误差 aggregateX lt function formula dataset
  • 使用 Group By LINQ 语句时 VB.NET 返回 IEnumerable(Of IEnumerable(Of T))

    我正在尝试转换安西姆 凯拉德INotifyDataErrorInfo执行 http burnaftercoding com post asynchronous validation with wpf 4 5 进入VB NET 一切顺利 直到

随机推荐

  • 链接到 Qt 中的共享库

    我刚刚创建了tinyxml 作为共享库 并且想弄清楚如何链接它 这是如何实现的 您必须在 pro 文件中添加 includepath 和 libs 像下面这样的东西 只需改变你的路径即可 LIBS ltinyxml LIBS L libs
  • 如何处理 WCF 客户端断开连接

    如何处理 WCF 客户端断开连接 我尝试过回调 但它似乎仅在客户端通过使用 断开连接 按钮 明确 断开连接时才有效 我希望我的服务器在客户端断开连接时收到通知 即使是手动断开连接或客户端进程崩溃 使用OperationContext Cur
  • 为什么 Firefox 以红色突出显示 HTML 过渡文档类型?

    看起来 Firefox 将其视为错误 这是什么意思 如果我将其更改为 Firefox 会正常处理它 顺便说一句 我使用的是 Firefox 12 0 如果您将鼠标悬停在该红线上 Firefox 会给您答案 几乎标准模式文档类型 预期的 查看
  • 在不使用HttpClient的情况下将处理后的JSP内容获取到spring控制器中?

    所以通常在 Spring 控制器中你只需返回一个ModelAndView对象并将请求转发到 JSP 我需要做的实际上是获取已处理的 JSP 的内容 这样我就可以在 JSONP 响应中发送它 例如 callback processed HTM
  • 如何控制哪些用户可以解密 SQL Server 对称密钥加密

    我正在考虑加密 SQL Server 中的一些敏感数据 例如银行帐号和社会安全号码 以便遵守新的州法律 我使用 SQL Server 2008 作为带有 NET 代码的数据库 我已经使用 NET 来加密密码 但为此我正在考虑使用 Micro
  • 具有归一化数据的 tanh 错误饱和度的神经网络

    我使用的神经网络由 4 个输入神经元组成 1 个由 20 个神经元组成的隐藏层和 7 个神经元输出层 我正在尝试将其训练为 bcd 到 7 段算法 我的数据已标准化 0 为 1 1 为 1 当输出错误评估发生时 神经元会错误饱和 如果期望的
  • 自动释放范围

    我想知道 autorelese 在 iPhone 上是如何工作的 我认为一旦你向对象发送自动释放这是有保证的保留在块的范围结束之前autorelease寄了 送了 那是对的吗 我正在从 NIB 中初始化一个视图applicationDidF
  • Java:按长度排序单词列表,然后按字母顺序排序

    有人告诉我有一个按长度排序的单词列表 并且那些具有相同长度的单词按字母顺序排序 这就是迄今为止我所拥有的实现这一点的方法 public static void doIt BufferedReader r PrintWriter w thro
  • iOS 版 Google 地图 API 的 API 密钥异常

    我正在使用适用于 IOS 的 Google 地图 API 开发 iOS 应用程序 我为我的项目安装了 CocoaPod 并根据 Google Developer 上的教程进行配置 但是 当我运行我的项目时 它说 由于未捕获的异常 GMSSe
  • 通过 ARM 创建与 Azure 表存储的 API 连接

    我正在尝试通过 ARM 模板将 API 连接部署到表格存储 但下面的模板返回错误 输入参数无效 请参阅详细信息以获取更多信息 详细信息 错误代码 参数未定义 消息 连接上不允许使用参数 accountKey 因为注册 API 时未将其定义为
  • 是否可以创建固定大小的过剩窗口?

    是否可以使用 glut 创建固定大小的窗口 因此窗口尺寸的任何更改都将被忽略 对我来说切换回 SDL 或类似的东西有点太晚了 显然 这是不可能以合法的方式 但你可以使用glutReshapeWindow在你的里面glutReshapeFun
  • SQLContext 隐式

    我正在学习 Spark 和 scala 我很精通java 但不太懂scala 我正在阅读关于 Spark 的教程 并遇到了以下代码行 该代码行尚未解释 val sqlContext new org apache spark sql SQLC
  • 如何消除此错误:“整数文字太大,无法用有符号整数类型表示”

    我有一份 C 语言的学校作业 我将用以下标志进行纠正 Wall Wextra Werror 所以这个无害的警告变成了一个错误并阻止编译 integer literal is too large to be represented in a
  • ActiveRecord Arel OR 条件

    如何使用逻辑 或 而不是 与 来组合 2 个不同的条件 NOTE 2 个条件是作为 Rails 范围生成的 并且不能轻易更改为类似的内容where x or y 直接地 简单的例子 admins User where kind gt adm
  • Xunit 为每个新测试创建 Test 类的新实例(使用 WebDriver 和 C#)

    有没有办法使用Webdriver Selenium 使用Xunit在同一浏览器中运行多个测试 目前xunit为每个新测试启动新的浏览器 下面是示例代码 public class Class1 private FirefoxDriver dr
  • 无法使用 pypy 安装 scipy (g++ 构建错误)

    截至 2020 年 可以使用 pypy 安装 scipy pypy下可以安装scipy吗 pypy3 mpip install scipy 然而 轮子因这种错误而失败 error Command g pthread DNDEBUG O2 f
  • 从Python中的字符串中删除控制字符

    我目前有以下代码 def removeControlCharacters line i 0 for c in line if c lt chr 32 line line i 1 line i 1 i 1 return line 如果要删除多
  • 如何在 Spark 中设置 Parquet 文件编码

    Parquet 文档描述了几种不同的编码here 它在读 写过程中是否会在文件内部发生某种变化 或者我可以设置它 Spark 文档中没有任何相关内容 只找到slides摘自 Netflix 团队 Ryan Blue 的演讲 他将 parqu
  • C++ 中的 const 和 static 说明符

    include
  • 如何在 VB NET 中将方法名称作为过程的参数传递

    我想创建一个过程 它的参数也是一个过程 是否可以 我创建了一些用作以下参数的过程 Private Sub Jump xStr as string Msgbox xStr is jumping End Sub Private Sub Run