Java 将JButton文本绑定到属性

Java 将JButton文本绑定到属性,java,swing,jbutton,Java,Swing,Jbutton,我是挥杆新手。我使用JTree、JCheckBox、JList和JButton制作了一个小应用程序。我使用关联的模型类来存储表示状态。很好用,除了JButton。我想根据模型的属性更新按钮的文本。基本上,无论用户当前是否登录,都会从登录/注销更改为注销。不幸的是,我在ButtonModel接口中找不到setText方法。有人能告诉我怎么做吗 谢谢。PW.对于JButton您可以使用操作作为您的模型。Action接口定义了JButton用于从操作检索其状态的键,包括一个用于文本的键:Action.

我是挥杆新手。我使用JTree、JCheckBox、JList和JButton制作了一个小应用程序。我使用关联的模型类来存储表示状态。很好用,除了JButton。我想根据模型的属性更新按钮的文本。基本上,无论用户当前是否登录,都会从登录/注销更改为注销。不幸的是,我在ButtonModel接口中找不到setText方法。有人能告诉我怎么做吗


谢谢。PW.

对于
JButton
您可以使用
操作作为您的模型。
Action
接口定义了
JButton
用于从
操作
检索其状态的键,包括一个用于文本的键:
Action.NAME

如果查看源代码,使用
操作
(或简单地说是
设置操作
方法)的构造函数使用
操作
中的更多信息,然后从
按钮模型
中检索什么。其他施工人员也一样,例如:

public JButton(String text, Icon icon) {
    // Create the model
    setModel(new DefaultButtonModel());

    // initialize
    init(text, icon);
}

因此,您的评估似乎是正确的,
按钮模型
不包含用于可视化典型的
按钮的所有信息。对于
按钮
,您可以使用
操作
作为模型。
Action
接口定义了
JButton
用于从
操作
检索其状态的键,包括一个用于文本的键:
Action.NAME

如果查看源代码,使用
操作
(或简单地说是
设置操作
方法)的构造函数使用
操作
中的更多信息,然后从
按钮模型
中检索什么。其他施工人员也一样,例如:

public JButton(String text, Icon icon) {
    // Create the model
    setModel(new DefaultButtonModel());

    // initialize
    init(text, icon);
}

因此,您的评估似乎是正确的,
按钮模型
不包含用于可视化典型的
JButton

以获得更好的帮助越快发布一个更好的帮助越快发布一个你的意思像一个符咒一样工作!非常感谢。你的意思是工作就像一个符咒!非常感谢。