Java - 如果随后定义了 actionPerformed,JButton 文本就会消失

2024-02-05

这已经困扰我一段时间了。如果我定义setText在 JButton 上before定义setAction,文本消失:

JButton test = new JButton();
test.setText("test");  // Before - disappears!
test.setAction(new AbstractAction() {
    public void actionPerformed(ActionEvent e) {
        // do something
    }
});
this.add(test);

If it's after, 没问题。

JButton test = new JButton();
test.setAction(new AbstractAction() {
    public void actionPerformed(ActionEvent e) {
        // do something
    }
});
test.setText("test");  // After - no problem!
this.add(test);

此外,如果我在 JButton 构造函数中设置文本,那就没问题了!啊啊!

为什么会出现这种情况?


如中所述文档 http://Setting%20the%20Action%20results%20in%20immediately%20changing%20all%20the%20properties%20described%20in%20Swing%20Components%20Supporting%20Action.:

设置操作会立即更改所有属性 Swing 组件支持操作中描述。

这些属性被描述here http://docs.oracle.com/javase/6/docs/api/javax/swing/Action.html#buttonActions,并包含文本。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Java - 如果随后定义了 actionPerformed,JButton 文本就会消失 的相关文章

随机推荐

  • 从函数返回数组[重复]

    这个问题在这里已经有答案了 这是我的代码 double hour payload add int entries double array int index 0 k 0 int totalpayload 0 double returnar
  • 对于较新的编译器,使用 std::async 的默认启动策略是否更好?

    众所周知 使用默认启动策略可能会导致延迟执行std async 参见示例C 编译器如何在 std async 的延迟执行和异步执行之间进行选择 https stackoverflow com questions 46102206 how d
  • 远程 Watir-Webdriver IE 表单字段无法识别文本和按键

    我一直在使用黄瓜 Watir Webdriver用IE就好了 在我的测试中 我转到表单字段并输入数据 然后单击保存按钮 所有动作都效果很好 最近我决定去硒网格2出于性能原因在机器上分配测试 它在 FF 和 Chrome 上运行得很好 但我开
  • Keras 不使用 fit_generator() 进行训练

    我正在使用 Keras 2 0 4 TensorFlow 后端 执行图像分类任务 我正在尝试训练我自己的网络 没有任何预训练参数 由于我的数据很大 我无法将所有数据加载到内存中 为此我使用ImageDataGenerator flow fr
  • Apache PDFBox:如何指定要输出的文本的位置

    所以基本上我已经实现了在特定位置生成 pdf 时创建文本 但现在我的问题是 如何处理位于不同位置的文本 预期生成的 PDF contentStream setLeading 15 contentStream newLineAtOffset
  • 如何使用 numpy 创建线性间隔点的数组?

    我正在尝试使用 numpy 创建一个等距点的数组 如下所示 array 0 0 05263158 0 10526316 0 15789474 0 21052632 0 26315789 0 31578947 0 36842105 0 421
  • 为什么 Integer 类缓存值在 -128 到 127 范围内?

    关于我之前的问题 为什么 与 Integer valueOf String 的比较对于 127 和 128 给出不同的结果 https stackoverflow com questions 20877086 confusion in me
  • 在opencv中加载svg图像

    我正在尝试下载 svg 图像并将其打开opencv https opencv org 以便进一步加工 我正在做的是将 svg 格式转换为 png 格式cairosvg https cairosvg org 使用打开它Pillow https
  • 默认情况下,弹性搜索的最大和最小日期是多少?

    Intro 我们有一个类注释为 Document有日期字段 E g Document indexName notif index type notif type shards 1 replicas 0 refreshInterval 1 p
  • Swift:从 iOS 7 编译 Archive 时出现分段错误

    我一直遇到这个问题 所以我开始用 Swift 创建一个新的单视图应用程序 适用于 iPhone 和 iPad 当目标是 iOS 8 1 时 一切正常 但如果我设置 iOS 7 1 或 7 则会出现分段错误 当我转到 产品 gt 存档 时 当
  • Centos+Apache+passenger+rails:从 www 文件夹运行 Rails 应用程序

    我正在尝试学习 Rails 所以我是新手 希望得到一些帮助 我试图同时运行多个应用程序 但遇到了一个奇怪的问题 当我尝试用 Rails 生成东西时 它给了我一个权限错误 我浏览了 stackoverflow 和其他几个网站 但没有找到任何好
  • 适用于 Foundry 中的业务/最终用户的电子表格上传

    Foundry 是否具有对将电子表格 相同架构 上传和附加到一个数据集的本机支持 并具有适合业务 最终用户的界面 我正在评估一个用户工作流程 其中涉及临时接收表格电子表格并使用常规编程方法附加它们 我正在尝试在 Foundry 中启用此工作
  • 从 XPages 全局删除 Dojo

    At http www dominoguru com pages 11182010085538 html http www dominoguru com pages 11182010085538 html and http dpastov
  • 限制 python 脚本位置

    我想知道是否有一种方法可以控制 python 脚本的运行位置 这样Python就只允许运行某些位置的脚本 我们正在运行带有 Windows 域控制器的 Windows 环境 原因是作为在具有严格安全要求的环境中锁定 python 的一步 给
  • Python 中 dict 类的动态运算符重载

    我有一个类可以动态重载基本算术运算符 如下所示 import operator class IshyNum def init self n self num n self buildArith def arithmetic self oth
  • 错误:ADB 退出,退出代码为 1 执行流式安装

    我在运行时收到以下错误flutter run然而 在某些项目上 在其他项目上它工作得很好 base Nusraths MacBook Pro flutter uber clone rahama flutter emulators launc
  • android webview 的自定义字体

    我在我的应用程序中使用 webview 我想使用自定义字体以波斯语显示文本 我将字体放在 asset 文件夹中 并编写了一种在 webview 中放置文本的方法 但在不支持波斯语的 api8 中 它显示未知字符而不是我的文本和支持波斯语的
  • 对不是 的直接子级的输入显示选项卡表单验证

    当未聚焦的选项卡出现验证错误时 选项卡标题应显示为红色 相反 当未聚焦的选项卡出现验证错误时 选项卡标题不会给出任何错误指示 当我使用子组件时会发生此问题 如果所有组件都是在创建 编辑级别定义的 则该选项卡将按预期变为红色 但如果存在嵌套组
  • dcast 重命名所有变量以数字开头

    所以我得到的数据如下所示 id year principal interest 1 011000600 2013 0 00 0 00 2 011000600 2014 544 03 0 00 3 011000700 2013 0 00 0
  • Java - 如果随后定义了 actionPerformed,JButton 文本就会消失

    这已经困扰我一段时间了 如果我定义setText在 JButton 上before定义setAction 文本消失 JButton test new JButton test setText test Before disappears t