java - 让按钮保持点击状态

标签 java swing jbutton

如何使按钮在用户退出程序后保持点击状态?

假设我有一个选项(作为 JButton),可以将 JTextArea 的文本设置为红色。用户单击按钮,然后退出程序。当用户重新打开程序时,文本为红色 - 表示按钮仍被单击。

如果您不明白这个示例,让我向您展示另一个示例:

我有一个 JButton 和一个 JLabel。单击该按钮时,会将 JLabel 的背景更改为蓝色。用户单击按钮,然后退出程序。当用户重新打开程序时,该按钮已被单击,这意味着 JLabel 的背景颜色为蓝色。

有什么办法可以做到这一点吗?

编辑:如果我可以在不加载外部文件的情况下完成此操作,我会更愿意。

编辑2:我喜欢使用首选项的想法。但是,您能为我举一个上述示例之一的例子吗?我是一个 Java 初学者,所以我有很多问题。例如,代码是否放入按钮的 actionPerformed 中?而且,我如何使用 Preferences 保存不同类型的信息(JTextarea 前景为红色)?

最佳答案

You should use Preferences for this.这个解释有点复杂。但基本上它保存了可以在运行之间检索的值。

Here's a tutorial of how to use this with a JFileChooser.这是我写的一个例子:

package com.sandbox;

import java.util.prefs.Preferences;

public class Sandbox {

    public static void main(String[] args) {
        Preferences prefs = Preferences.userNodeForPackage(Sandbox.class);
        Integer counter = Integer.valueOf(prefs.get("counter", "0"));
        System.out.println(counter);
        counter++;
        prefs.put("counter", String.valueOf(counter));
    }
}

第一次运行它时,它会打印“0”。下次运行它时,它将打印“1”。

关于java - 让按钮保持点击状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16472228/

相关文章:

java - 将 JButton 的多个实例添加到网格中的 JFrame

java - 尝试用 JPanel 画线

java - 从 MainActivity 通知 onPostExecute 的 fragment

java - 如何读取csv文件并在java半透明swing窗口中显示其内容?

java - 圆边按钮

Java 按钮 mouseclicked joptionpane

java - 如果我只能访问对象的接口(interface)并且不可序列化,我可以克隆对象吗?

java - 使用 Maven 配置在 Eclipse 中为 Hadoop 作业设置 Java 堆空间

java - 防止 JTable 双击时自动排序

java - 滚动时缓慢更改背景