GUI事件

C#中的GUI事件处理
Windows Forms(支持GUI应用程序的.NET框架)中的事件处理使用.NET事件处理模式。我们下面将应用这种模式编写一个简单的应用程序,该应用程序有一个继承自System.Windows.Forms.Form类的MyForm类。如果仔细地研究一下代码和其中的三行注释,就会发现其实我们无须定义代理和使用event关健字调用这些代理,因为我们已经可以使用GUI控制(表格、按钮等)的事件(鼠标点击等),代理就是System.EventHandler。当然了,我们仍然 需要定义方法,创建代理对象(System.EventHandler),并在代理对象中安装方法,一旦有事件发生,方法就会开始执行。
using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using System.Data;

public class MyForm Form{
private Button m_nameButton;
private Button m_clearButton;
private Label m_nameLabel;

private Container m_components = null;

public MyForm(){
initializeComponents();
}
private void initializeComponents(){
m_nameLabel=new Label();
m_nameButton = new Button();
m_clearButton = new Button();

SuspendLayout();

m_nameLabel.Location=new Point(16,16);
m_nameLabel.Text="Click NAME button, please";
m_nameLabel.Size=new Size(300,23);

m_nameButton.Location=new Point(16,120);
m_nameButton.Size=new Size(176, 23);
m_nameButton.Text="NAME";
//创建代理,并安装方法,将代理捆绑在按钮的Click事件上
m_nameButton.Click += new System.EventHandler(NameButtonClicked);

m_clearButton.Location=new Point(16,152);
m_clearButton.Size=new Size(176,23);
m_clearButton.Text="CLEAR";
//创建代理,并安装方法,将代理捆绑在按钮的Click事件上
m_clearButton.Click += new System.EventHandler(ClearButtonClicked);

this.ClientSize = new Size(292, 271);
this.Controls.AddRange(new Control[] {m_nameLabel,m_nameButton,m_clearButton});
this.ResumeLayout(false);
}
//定义输入参数与代理完全相同的方法
private void NameButtonClicked(object sender, EventArgs e){
m_nameLabel.Text="My name is john, please click CLEAR button to clear it";
}
private void ClearButtonClicked(object sender,EventArgs e){
m_nameLabel.Text="Click NAME button, please";
}
public static void Main(){
Application.Run(new MyForm());
}
}
 
Java GUI 事件监听可以通过添加事件监听器来实现。使用事件监听器,您可以检测用户在 GUI 组件上执行的操作,例如单击按钮或更改文本字段中的值。 以下是 Java GUI 事件监听的基本步骤: 1. 创建需要添加事件监听器的 GUI 组件。 2. 创建一个事件监听器类,该类应实现所需的事件监听器接口,例如 ActionListener、MouseListener 或 KeyListener。 3. 在 GUI 组件上添加事件监听器,使用 addEventListener()或 addActionListener()等事件处理方法。 4. 在事件监听器类中编写事件处理代码,以响应用户在 GUI 组件上执行的操作。 以下是一个简单的示例,展示如何在 Java GUI 中实现事件监听: ```java import javax.swing.*; import java.awt.event.*; public class EventListenerExample implements ActionListener { JFrame frame; JButton button; public EventListenerExample() { frame = new JFrame("Event Listener Example"); button = new JButton("Click me"); button.addActionListener(this); frame.add(button); frame.pack(); frame.setVisible(true); } public void actionPerformed(ActionEvent e) { if (e.getSource() == button) { JOptionPane.showMessageDialog(frame, "Button clicked!"); } } public static void main(String[] args) { new EventListenerExample(); } } ``` 在此示例中,我们创建了一个 JFrame 和一个 JButton。我们将 ActionListener 接口实现添加到 JButton 上,并使用 addActionListener() 方法将其添加到 JButton 上。在 actionPerformed() 方法中,我们编写了响应用户单击按钮时要执行的代码。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值