【问题标题】:Java Swing display text and disable a buttonJava Swing 显示文本并禁用按钮
【发布时间】:2020-12-08 17:23:07
【问题描述】:

我正在尝试编写一个 Java Swing 程序:

说明

编写应用程序 JFrameDisableButton 来实例化一个包含 JButton 的 JFrame。修改 JFrameDisableButton 程序,以便在用户至少单击八次之前不会禁用 JButton。此时,显示一个指示“这就够了!”的 JLabel。

我的程序没有显示“够了!”信息。我正在尝试显示点击计数。号码不显示。另外,我不知道如何禁用按钮。

import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
public class JFrameDisableButton extends JFrame implements ActionListener
{
    final int SIZE = 180;
    Container con = getContentPane();
    JButton button = new JButton("Press Me");
    int count = 0;
    final int MAX = 8;
    final int WIDTH = 200;
    final int HEIGHT = 200;
    JLabel label = new JLabel("That's enough!");
    JLabel initLabel = new JLabel("");
    JLabel label2 = new JLabel("count: ");
    public JFrameDisableButton()
    {
        super("Disable Button");
        setSize(WIDTH, HEIGHT);
        setLayout(new FlowLayout());
        add(button);
        add(label2);
        add(initLabel);
    }

    @Override
    public void actionPerformed(ActionEvent e)
    {
        count++;
        label2.setText("count: " + count);
        if (count >= 8)
        {
            initLabel.setText("That's enough");
        }
    }

    public static void main(String[] args) {
        JFrameDisableButton frame = new JFrameDisableButton();
        frame.setVisible(true);
    }
}

【问题讨论】:

标签: java swing


【解决方案1】:

实现 ActionListener 接口是不够的。

Swing 无法猜测 ActionListener 应该用于什么组件。

您需要将ActionListener 添加到您的按钮:

button.addActionListener( this );

最初禁用您使用的按钮:

button.setEnabled( false );

【讨论】:

猜你喜欢
  • 2018-06-12
  • 2014-05-15
  • 2010-09-11
  • 2020-05-07
  • 2012-10-10
  • 2011-05-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多