java - 不显示按钮上的 Java 文本
问题描述
我正在制作简单的 Java swing 应用程序,但未显示某些按钮上的文本。
其中一个 JButton 带有文本“Clear”并显示其文本,但我尝试将其他按钮的文本设置为“Change Color”、“Write”、“c”、“w”,但没有一个显示此文本,甚至不 ”...”。
这部分(不是实际的)代码在扩展类的构造函数中JFrame
:
/* JPanel */ panel = new JPanel();
/* JButton */ testButton1 = new JButton("Change Color");
/* JButton */ testButton2 = new JButton("c");
panel.add(testButton);
/* this. */ pack();
同样,奇怪的是文本仅显示在一个按钮上,该按钮的创建方式与其他按钮相同。
解决方案
我在这里建立一个例子。
import java.awt.FlowLayout;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class DisplayTest {
public static void main(String[] args) {
run(new Display(), 400, 300);
}
public static void run(JFrame jFrame,int width,int height) {
jFrame.setDefaultCloseOperation(Display.EXIT_ON_CLOSE);
jFrame.setSize(width, height);
jFrame.setVisible(true);
jFrame.setLayout(new FlowLayout());
}
}
class Display extends JFrame{
JPanel panel = new JPanel();
JButton testButton = new JButton("Change Color");
JButton clearButton = new JButton("clear");
public Display() {
add(testButton);
add(clearButton);
pack();
}
}
注意,BorderLayout 会让后面的组件替换前面的,flowLayout 会显示你添加的所有组件。
推荐阅读
- c# - 如何使用 C# 检查一个对象(我必须在列表中插入)是否已经在列表中?
- javascript - 在活动类标题颜色更改(添加/删除类)
- json - 使用路径更新 Json 的函数(例如:profile/zones/objects/object)
- javascript - How to use multiple dropdowns in navbar?
- flutter - 在项目中添加包后,android 可以,但 ios 在启动时崩溃
- php - iPhone 上 PHP 页面中的特殊字符问题
- java - 尝试从控制器返回 html 页面时找不到资源
- php - Cronjob wget 在不可预知的时间间隔内多次触发 http 请求
- gradle - Gradle 多模块 intellij 设置
- angular - 测试服务时如何模拟服务依赖关系?