将字体传递给 JPanel 上的组件

2024-04-24

我有一个扩展 JPanel 的类,上面有几个按钮。我希望能够通过一次调用 setFont(Font font); 来设置所有按钮上的字体我在 JPanel 类中定义了 setFont 方法,如下所示:

public class MyPanel extends JPanel {
    private JButton[] buttons = new JButton[10];

    public MyPanel() {
        for(int i = 0; i < 10; i++) {
            buttons[i] = new JButton(""+i);
            this.add(buttons[i]);
        }
    }

    public void setFont(Font font) {
        if(buttons != null) {
            for(JButton b : buttons) {
                b.setFont(font);
            }
        }
    }
}

但是,按钮上的字体永远不会改变。我知道 setFont 是由 JPanel 构造函数调用的,但我不明白为什么当我在创建 MyPanel 对象后明确调用它时,字体不会传递到按钮。

感谢大家!

Brent


如果你想all应用程序中的后续按钮要使用不同的字体,您可以在实例化面板之前设置默认值:

UIManager.put("Button.font", new FontUIResource("Dialog", Font.BOLD, 24));

附录:更集中的方法可能是添加扩展的实例JButton在面板的构造函数中:

buttons[i] = new MyButton(String.valueOf(i));
this.add(buttons[i]);

新按钮将始终具有相同的字体:

private static class MyButton extends JButton {

    private static final Font font = new Font("Dialog", Font.BOLD, 24);

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

将字体传递给 JPanel 上的组件 的相关文章

  • 如何在java中将数组值排序为循环格式?

    我的数组值如下 String value 1 2 3 4 5 6 7 8 9 10 假设如果我将值 5 传递给 tat 数组 它应该按如下顺序排序 5 6 7 8 9 10 1 2 3 4 怎么办 有人帮忙吗 感谢你 你需要的就是所谓的轮换
  • 与 Eclipse 中的 Java Content Assist 交互

    作为我的插件项目的一部分 我正在考虑与 Eclipse 在 Java 文件上显示的内容辅助列表进行交互 我正在尝试根据一些外部数据对列表进行重新排序 我看过一些有关创建新内容辅助的教程 但没有看到有关更改现有内容辅助的教程 这可能吗 如果是
  • Android:文本淡入和淡出

    我已阅读此 stackoverflow 问题和答案 并尝试实现文本淡入和淡出 Android中如何让文字淡入淡出 https stackoverflow com questions 8627211 how to make text fade
  • Android中如何使用JNI获取设备ID?

    我想从 c 获取 IMEIJNI 我使用下面的代码 但是遇到了未能获取的错误cls 它总是返回NULL 我检查了环境和上下文 它们都没有问题 为什么我不能得到Context班级 我在网上搜索了一下 有人说我们应该使用java lang Ob
  • Mockito 使用 @Mock 时将 Null 值注入到 Spring bean 中?

    由于我是 Spring Test MVC 的新手 我不明白这个问题 我从以下代码中获取了http markchensblog blogspot in search label Spring http markchensblog blogsp
  • Java 中如何将 char 转换为 int? [复制]

    这个问题在这里已经有答案了 我是Java编程新手 我有例如 char x 9 我需要得到撇号中的数字 即数字 9 本身 我尝试执行以下操作 char x 9 int y int x 但没有成功 那么我应该怎么做才能得到撇号中的数字呢 ASC
  • Android 无法解析日期异常

    当尝试解析发送到我的 Android 客户端的日期字符串时 我得到一个无法解析的日期 这是例外 java text ParseException 无法解析的日期 2018 09 18T00 00 00Z 位于 偏移量 19 在 java t
  • 如何仅从 Firestore 获取最新更新的数据?

    在 Firestore 上发现任何更改时始终获取整个文档 如何只获取最近更新的数据 这是我的数据 我需要在第一次加载时在聊天中按对象顺序 例如 2018 09 17 30 40 msg和sendby 并且如果数据更新则仅获取新的msg和se
  • 在Java中运行bat文件并等待

    您可能会认为从 Java 启动 bat 文件是一项简单的任务 但事实并非如此 我有一个 bat 文件 它对从文本文件读取的值循环执行一些 sql 命令 它或多或少是这样的 FOR F x in CD listOfThings txt do
  • Java继承,扩展类如何影响实际类

    我正在查看 Sun 认证学习指南 其中有一段描述了最终修饰符 它说 如果程序员可以自由地扩展我们所知的 String 类文明 它可能会崩溃 他什么意思 如果可以扩展 String 类 我是否不会有一个名为 MyString 的类继承所有 S
  • 如何将 HTML 链接放入电子邮件正文中?

    我有一个可以发送邮件的应用程序 用 Java 实现 我想在邮件中放置一个 HTML 链接 但该链接显示为普通字母 而不是 HTML 链接 我怎样才能将 HTML 链接放入字符串中 我需要特殊字符吗 太感谢了 Update 大家好你们好 感谢
  • 使用 Elastic Beanstalk 进行 Logback

    我在使用 Elastic Beanstalk 记录应用程序日志时遇到问题 我正在 AWS Elastic Beanstalk 上的 Tomcat 8 5 with Corretto 11 running on 64bit Amazon Li
  • 如何区分从 Saxon XPathSelector 返回的属性节点和元素节点

    给定 XML
  • 使用 HtmlUnit 定位弹出窗口

    我正在构建一个登录网站并抓取一些数据的程序 登录表单是一个弹出窗口 所以我需要访问这个www betexplorer com网站 在页面的右上角有一个登录链接 写着 登录 我单击该链接 然后出现登录弹出表单 我能够找到顶部的登录链接 但找不
  • 在 Spring 上下文中查找方法级自定义注释

    我想知道的是 所有的类 方法Spring http en wikipedia org wiki Spring Framework注释为 Versioned的bean 我创建了自定义注释 Target ElementType METHOD E
  • 子类构造函数(JAVA)中的重写函数[重复]

    这个问题在这里已经有答案了 为什么在派生类构造函数中调用超类构造函数时 id 0 当创建子对象时 什么时候在堆中为该对象分配内存 在基类构造函数运行之后还是之前 class Parent int id 10 Parent meth void
  • Android View Canvas onDraw 未执行

    我目前正在开发一个自定义视图 它在画布上绘制一些图块 这些图块是从多个文件加载的 并将在需要时加载 它们将由 AsyncTask 加载 如果它们已经加载 它们只会被绘制在画布上 这工作正常 如果加载了这些图片 AsyncTask 就会触发v
  • 抛出 Java 异常时是否会生成堆栈跟踪?

    这是假设我们不调用 printstacktrace 方法 只是抛出和捕获 我们正在考虑这样做是为了解决一些性能瓶颈 不 堆栈跟踪是在构造异常对象时生成的 而不是在抛出异常对象时生成的 Throwable 构造函数调用 fillInStack
  • 由 Servlet 容器提供服务的 WebSocket

    上周我研究了 WebSockets 并对如何使用 Java Servlet API 实现服务器端进行了一些思考 我没有花费太多时间 但在使用 Tomcat 进行一些测试时遇到了以下问题 如果不修补容器或至少对 HttpServletResp
  • java'assert'和'if(){}else exit;'之间的区别

    java和java有什么区别assert and if else exit 我可以用吗if else exit代替assert 也许有点谷歌 您应该记住的主要事情是 if else 语句应该用于程序流程控制 而assert 关键字应该仅用于

随机推荐

  • 如何将OpenERP 5.0升级到6.0

    我安装了 OpenERP 5 0 其中包含一些自定义模块 我希望将其升级到 OpenERP 6 0 我对这种软件有一些经验 并且检查过OpenERP 遗憾的是 我没有 OpenERP 的实际经验 我喜欢寻求一些帮助以避免错误 在研究这个问题
  • 无法在 Flask 后端提取 React 前端上传的图像文件

    我正在尝试将图像文件 驻留在本地 从我的反应单页前端应用程序发送到我的烧瓶后端 我尝试过但不限于捕获我的内容类型并在前端指示 encType 的一些事情 尽管如此 post请求表明它是成功的 但是 当我记录 requests files r
  • 在python中将一些数组合并到单个数组/列表中

    如何转换这个数组 不同维度的numpy l array 0 08 array 0 56 0 01 0 46 array 0 60 0 07 0 03 array 0 0 0 0 array 0 到一维数组中 l array 0 08 0 5
  • 使用 XSLT 的 XML 到 XML,根据值省略特定元素

    我正在尝试生成一个与初始文件几乎相同的 xml 文件 但我需要我的 xsl 表将其转换为仅包含 为 公寓 或 单元 且具有值的文件 中超过 1 个我完全迷失了 任何帮助将不胜感激 我最初的 xml 表如下
  • SVG/矢量图室内导航路由

    我一直在网上搜索有关如何为基于 SVG 的室内平面图实现我自己的点对点导航系统的教程或方法 我已经在网上搜索过 但唯一的选项适用于谷歌地图 不过 我使用 Illustrator 创建了地图 并使用路径 矢量作为 SVG 图像 我不需要为用户
  • RestTemplate ClientHttpResponse.getBody() 抛出 I/O 错误

    我正在使用 Spring RestTemplate 进行 RESTful 调用 我还使用自定义 ClientHttpRequestInterceptor 来记录请求和响应以进行调试 为了多次读取响应 一次用于日志记录 一次用于处理 我使用
  • 使用子进程 PIPE 在 Python 脚本之间发送字符串

    我想在我的主 python 程序中使用子进程打开一个 Python 脚本 我希望这两个程序能够在运行时相互聊天 这样我就可以监视从属脚本中的活动 即我需要它们在彼此之间发送字符串 主程序将具有与此类似的功能 它将与从属脚本进行通信并监视 S
  • 如何修改 IE 和 Opera 中 SELECT 标签的默认突出显示行为?

    这是我的 HTML
  • 如何获取 ListView 项目 onItemClick 的光标值?

    我创建了一个数据库 其中包含表 类别 和列 id 标题等 我想从我的数据库中读取这些类别的数据并将它们列出在ListView 这是我的代码 public class MainActivity extends listActivity pri
  • YouTubeAndroidPlayerAPI 无法播放某些视频

    更新 09 05 2016 17 10 问题似乎与视频的发布日期有关 在4月的最后一周 我在YouTube上发布了很多视频 在4月27日19 00之前发布的视频可以正常工作 而在4月27日21 15之前发布的视频可以正常使用 当天就讨论了该
  • 发生异常时记录什么?

    public void EatDinner string appetizer string mainCourse string dessert try Code catch Exception ex Logger Log Error in
  • 离子“等待signInWithEmailAndPassword()”无法在没有livereload的iOS模拟器/设备上工作

    在我的 Ionic 5 电容器应用程序中 我有一个调用此函数的按钮 import signInWithEmailAndPassword signOut User UserCredential from angular fire auth 等
  • 从应用程序中的任何位置访问文本框

    如何在 winforms 应用程序中创建一个文本框 以接受来自应用程序中任何位置的新文本行 我有一个包含文本框的主窗体 我想通过另一个类中的方法直接将文本添加到框中 Update 我在我的主要形式中尝试过这个 public void Out
  • 如何使用 Spring Security 3.0.x 处理 HTTP 403

    我在 Spring Security 3 0 x 特别是目前的 3 0 2 方面遇到了一个小问题 我正在开发的整个应用程序运行完美 除非没有权限的人尝试登录 当发生这种情况时 用户会被重定向到 欢迎 页面 因为他的用户名 密码有效 并且他会
  • 从给定起始索引的一维数组中提取子数组 - Python / NumPy

    NumPy 数组可以与其他数组一起索引 为了显示 gt gt gt import numpy as np gt gt gt arr np array 0 0 1 0 2 0 3 0 4 0 5 0et f4 gt gt gt ids np
  • 在 jruby 中实现自定义 java 类

    我正在尝试实现 java 类的集合斯坦福 NLP 解析器 http nlp stanford edu software lex parser shtml在 jRuby 中 我能够在 jRuby 中实现常规 Java 但不能实现斯坦福解析器类
  • oppo和小米手机无法使用后台定位服务

    在我的android应用程序中 位置服务作为后台服务实现 我已经用不同的手机 如三星 micromax Moto lenovo nexus 测试了它 它在所有手机上都能正常工作 但是当我在Oppo colorOS 和MI MIUI OS 我
  • Pandas:合并数据框但对重叠列求和

    我读了很多关于merge and join 的方法pandas DataFrames 并在我自己的问题上尝试这些 但没有完全找到解决方案 我有一个非常大的数据文件 csv 其中包含各种 ID 每小时的消耗量 我想汇总每个 ID 每月的消耗量
  • 从数值变量创建因子

    我对 R 很陌生 在创建因子方面遇到了一些麻烦 我应该从数字变量创建一个因子 该因素应具有三个级别 不满意 值 0 到 4 既不 值 5 满意 值 6 到 10 lsat factor lt factor soep lsat levels
  • 将字体传递给 JPanel 上的组件

    我有一个扩展 JPanel 的类 上面有几个按钮 我希望能够通过一次调用 setFont Font font 来设置所有按钮上的字体我在 JPanel 类中定义了 setFont 方法 如下所示 public class MyPanel e