我已经编写了这段代码来显示面板上的一些颜色:
import java.util.ArrayList;
import java.util.List;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class Palette {
public static void main(String[] args) {
JFrame frame = new JFrame("Panel");
palette.add(new Color(255, 0, 0));
palette.add(new Color(0, 255, 0));
palette.add(new Color(0, 0, 255));
int width = 100;
int height = 250;
int x = 0;
for (Color color : palette) {
JPanel panel = new JPanel();
panel.setSize(width, height);
panel.setLocation(x, 750);
panel.setBackground(new java.awt.Color(color.getColor()));
frame.add(panel);
x+=width;
}
frame.pack();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(1000, 1000);
frame.setVisible(true);
}
}
正确位置和正确尺寸的两个第一面板。但是最后一个将所有帧填充为蓝色。怎么了?
您必须使用适当的布局管理器。默认情况下,JFrame有一个BorderLayout
。
查看本教程的LayoutManagers:
http://docs.oracle.com/javase/tutorial/uiswing/layout/visual.html
嗨,我正在编写一个简单的物理引擎,以便更好地理解对象碰撞和Java图形,到目前为止,我已经成功地编写了代码,将JPanel添加到JFrame中,并允许它们显示一些正确的大小,但当我查看实际程序时,JPanel似乎是正确的大小,但它不是从窗口的上角开始的,而是从框架的左上角开始的。我似乎有这个问题很多,我想要的东西在(0,0)和开始在框架的上角,而不是面板。下面是我的代码: 我有一个引擎类,它扩展了
问题内容: 我的Java swing应用程序有一个格式问题。它应该很简单,但是我很难找到任何帮助(每个主题似乎都与 删除 JPanel中的默认填充有关)。我的各个JPanels中的文本都拥抱侧面和顶部,触及彩色边框:如何添加填充?谢谢。 问题答案: 在周围设置一个。 例:
你好,我实际上正在尝试从jPanel切换到我的JFrame中的另一个jPanel。我已经更改了我的代码,下面是我遵循以下内容的样子:
使用下面的代码,我将创建一个包含JTextFields和JLabels的JPanel,并将该面板添加到另一个JPanel中。如何调整InfoPanel上JTextFields之间的间距?
我对荡秋千很陌生。我有一个基于外部输入动态生成UI的应用程序。在面板的顶部,有一个带有一些标题文本的JLabel,然后是一个按钮(告诉应用程序重新加载动态生成的内容),然后在下面是一个JScrollPane,其中包含所有动态生成的内容。我希望标签和按钮只占用所需的垂直空间,然后滚动窗格来填充所有剩余的可用空间。 我正在使用GridBagLayout,并在添加滚动窗格之前设置gbc.fill=BOT