[JavaSwing] JButton的

内容
创建简单的JButton
创建行动的方式
Đặt保证金

JButton的 是一个对象,让我们同时单击将执行什么.
JButton的
示例按钮 “计算” 下面, 当点击,将根据在输入的信息计算出的兴趣 JTextField的

例 1: 创建一个简单的JButton

package nguyenvanquan7826.JButton;

import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;

public class MyJButton extends JFrame {
	private JLabel lb;

	public MyJButton() {
		// create JFrame
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		setSize(300, 200);
		setLayout(new GridLayout(2, 1, 5, 5));

		// create JLabel
		lb = new JLabel("My JLabel");
		lb.setHorizontalAlignment(JLabel.CENTER);
		add(lb);

		// create JButton with text "Click Button"
		JButton btn = new JButton("Click Button");
		// add action
		btn.addActionListener(new ActionListener() {
			@Override
			public void actionPerformed(ActionEvent arg0) {
				changeTextJLabel();

			}
		});
		add(btn);

		// display JFrame
		setLocationRelativeTo(null);
		setVisible(true);
	}

	// change text of lb
	private void changeTextJLabel() {
		lb.setText("You are clicked JButton");
	}

	public static void main(String[] args) {
		new MyJButton();
	}
}

JButton的
一些注意事项
* 初始化的JButton: 我们有一些初始化方法的JButton
– JButton的() : 创建一个文字或图标按钮没有
– JButton的(行动) : 创建一个从所采取的行动属性的按钮
– JButton的(图标图标) : 创建一个按钮指定一个图标
– JButton的(文本字符串) : 创建一个指定的按钮文字
– JButton的(文本字符串, 图标图标) : 创建一个指定的文字和图标按钮
* 创建JButton的行动 我用的JButton addActionListener方法的方法来做到这一点. 然后,它可以创建新的 1 正确的ActionListener在上面的例子. 你只写 新动作 然后按下Ctrl + 空间 (从) NetBean或者Eclipse会告诉你的方法和接口的列表, 你选择 的ActionListener() 它会自动创建方法 的actionPerformed() 为你. 然后,我们调用方法 changeTextJLabel() 改变文本 的JLabel 当你点击的按钮. 请注意,因为我们创造新的权利addActionListener方法的ActionListener不应该受到的JLabel的setText直接调用. 如果你希望我们打电话直接调用通过类名: MyJButton.lb.setText(), 然而,我们很少做这种方式.

例 2: 该方法来创建和捕捉事件的JButton

package nguyenvanquan7826.JButton;

import java.awt.Color;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;

public class JButtonAction extends JFrame implements ActionListener {
	private JButton btnGreen;
	private JLabel lb;

	public JButtonAction() {
		// create JFrame
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		setSize(200, 300);
		setLayout(new GridLayout(3, 1, 5, 5));

		// add JFrame content
		lb = new JLabel("Background default");
		lb.setOpaque(true);
		add(lb);

		btnGreen = createJButton("Green");
		add(btnGreen);
		add(createJButton("Blue"));

		// display JFrame
		setLocationRelativeTo(null);
		setVisible(true);
	}

	// create JButton with text is title
	private JButton createJButton(String title) {
		JButton btn = new JButton(title);
		// add action for JButton
		btn.addActionListener(this);
		return btn;
	}

	// change text and background of JLabel when click button
	private void changeBackgroundJLabel(Color bgcolor, String nameBgcolor) {
		lb.setBackground(bgcolor);
		lb.setText("Background is " + nameBgcolor);
	}

	@Override
	public void actionPerformed(ActionEvent e) {
		// click button green
		if (e.getSource() == btnGreen) {
			changeBackgroundJLabel(Color.green, "Green");
		}
		// click button blue
		if (e.getActionCommand() == "Blue") {
			changeBackgroundJLabel(Color.blue, "Blue");
		}
	}

	public static void main(String[] args) {
		new JButtonAction();
	}
}

action button

在该示例 2 我们创建一个JLabel和 2 的JButton放置成与一个GriLayour 3 商品和 1 职位. 当你点击按钮 “绿色” 或 “蓝” 文本和背景改变的JLabel.

2 如何创建和在本实施例中捕获的事件是从前面的例子不同. 在这里,我们实现了ActionListener接口服务听音事件. 如果实现了这个接口,我们需要重写方法actionPerfomed() 它使听音事件. 由于这种方法是 1 ActionEvent的ê, 这是它听到该事件.
要知道到底是什么按钮被按下时,我们需要将它与按钮比较. 对于btnGreen, 这是 1 变量 “维基” 类,所以我们可以用比较 e.getSource() == BtnGreen 检查, 然而,与蓝色按钮,它不是,它是在createJButton产生的方法的JButton() 如果我们要测试它比较它的文本标签的命令 e.getActionCommand() == “蓝”.

你要注意方法createJButton() 它返回 1 JButton的. 通过这种方法创建的按钮应该是 addActionListener方法(此). 因为我们有这么实现了ActionListener接口的方法必须是 tức là tác động đến chính cái ActionListener đó do đó mà các button có thể nghe được sự kiện.

Đặt Magin cho JButton:

Nếu text của Jbutton hơi dài quá so với kích thước của nó, bạn có thể đặt khoảng cách giữa biên của button tới text bằng cách dùng phương thức:

setMargin(new Insets(int bottom, int left, int right, int top));

首席执行官: btn.setMargin(new Insets(0, 0, 0, 0)); text sẽ cách các biên là 0 (sát biên).

请参阅: Class JButton, Use Button