【问题标题】:Java Swing button text appears differentJava Swing 按钮文本出现不同
【发布时间】:2020-05-07 16:25:57
【问题描述】:

我是一名 Java 初学者,正在学习 Java Swing。按钮的文本在运行时显示不可读,如图 https://i.stack.imgur.com/ihlQn.jpg 所示。我尝试通过以下代码行更改字体。我在 Windows 10 64 位操作系统上工作。

import javax.swing.*;
import java.awt.*;

public class Button1 {

    public static void main(String[] args) {
        Button1 gui = new Button1();
        gui.go();
    }

    public void go(){
        JFrame frame = new JFrame();
        JButton east = new JButton(" East");
        JButton west = new JButton(" West");
        JButton north = new JButton(" North");
        JButton south = new JButton(" South");
        JButton center = new JButton(" Center");

        frame.getContentPane(). add( BorderLayout.EAST, east);
        frame.getContentPane(). add( BorderLayout.WEST, west);
        frame.getContentPane(). add( BorderLayout.NORTH, north);
        frame.getContentPane(). add( BorderLayout.SOUTH, south);
        frame.getContentPane(). add( BorderLayout.CENTER, center);



        Font bigFont = new Font("serif", Font.BOLD , 10);
        east.setFont(bigFont);
        west.setFont(bigFont);
        north.setFont(bigFont);
        south.setFont(bigFont);
        center.setFont(bigFont);
        frame.setSize(300,300);
        frame.setVisible(true);
    }
}

【问题讨论】:

  • 那么在不设置字体的时候,一切都好吗?试试new Font(Font.SERIF, Font.BOLD, 10);`。 (区别在于大写的“Serif”。​​)
  • 可能你的衬线字体坏了。我已经开始你的例子,一切正常。
  • 如果不设置字体怎么办?那是正确的吗?
  • 查看:stackoverflow.com/a/36632974/131872 的简短程序列出了您机器上的字体以查看是否支持“serif”。请注意,在我的机器上它显示“Serif”。不知道大写是否重要。

标签: java swing fonts


【解决方案1】:

您的代码在我的机器上正常运行。

我会冒险猜测问题出在字体上。您的操作系统可能无法理解它,因此它会按照屏幕截图中的方式呈现。我会尝试一些其他字体,或者查看您的机器上可用的字体。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-06-21
    • 2018-05-22
    • 1970-01-01
    • 2015-06-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多