【问题标题】:How to code a Button's Click Event?如何编写按钮的点击事件?
【发布时间】:2011-03-27 15:51:39
【问题描述】:

我正在使用 winform 和 fb.net。 有人可以为我提供一个如何创建按钮单击事件的示例吗? 我有 暗淡但作为 windows.forms.button 但是.name 但是.text but.location 等等。 但我如何创建 Click 及其背后的代码?

【问题讨论】:

    标签: vb.net winforms button


    【解决方案1】:

    你可以使用:

    AddHandler button.Click, AddressOf HandlerMethod
    

    在 VB 中,您可以指定一个方法处理特定控件的特定事件,如果您不是动态创建它 - 当您(比如说)动态填充表单时,您只需要 AddHandler一组按钮。

    这是一个简短但完整的示例:

    Imports System.Windows.Forms
    
    Public Class Test
    
        <STAThread>
        Public Shared Sub Main()
            Dim f As New Form()
            Dim b As New Button()
            b.Text = "Click me!"
            AddHandler b.Click, AddressOf ClickHandler
            f.Controls.Add(b)
            Application.Run(f)
        End Sub
    
        Private Shared Sub ClickHandler(sender As Object, e As EventArgs)
            Dim b As Button = DirectCast(sender, Button)
            b.Text = "Clicked"
        End Sub
    
    End Class
    

    编辑:要关闭表单,最简单的方法是获取原始控件的表单:

        Private Shared Sub ClickHandler(sender As Object, e As EventArgs)
            Dim c As Control = DirectCast(sender, Control)
            Dim f as Form = c.FindForm()
            f.Close()
        End Sub
    

    【讨论】:

    • 这很棒。正是我想要的。但对我来说仍然缺少一件。如何从 ClickHandler 关闭放置按钮的表单?在您的示例中,这将是 f
    • @bochur1:“此站点不是为此设置的”以什么方式?人们一直在发布代码。但不要在评论中发布 - 将其编辑到您的原始代码中。
    • 忽略我关于它不起作用的消息。它工作得很好。非常感谢!
    【解决方案2】:

    在 winforms 设计器中,添加一个按钮,然后双击它。这将创建事件(基于按钮的名称)并将您带到事件的代码。

    【讨论】:

    • 为了清楚起见,它不是创建 事件 - 它是创建 事件处理程序。按钮本身会发布事件,无论是否有人订阅。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-07-08
    • 1970-01-01
    • 2015-08-28
    • 2011-12-30
    • 2023-04-09
    相关资源
    最近更新 更多