JAVA摇摆问题
我想基于代表按钮文本的字符串列表创建JButtons列表。第一步,我从一个外部文本文件中收集按钮文本的数据。此数据存储在数据变量中。
List<String> data = ReadFile("texts.txt")
现在,我要创建名为按钮的JButton列表。在那里,我设定了他们的文字和界限。边界是相对于索引的,因此按钮位于彼此下方。最后,我将按钮添加到框架和按钮列表中。
List<JButton> buttons = new ArrayList<>();
for (int index = 0; index < data.size(); index++) {
JButton button = new JButton();
button.setText(data.get(index));
button.setBounds(0, index*50, 100, 50);
add(button);
buttons.add(button);
但是当我执行此操作时,最后一个按钮结束时很大,当我将鼠标悬停在它们上方时,第一个按钮也消失了,但这是基于最后一个按钮位于上方的事实:
Picture of the executed script
最后一个按钮具有框架的大小,如果我调整框架的大小没关系:
我希望有人可以帮助我或告诉我在哪里可以找到帮助。谢谢。
您需要为JFrame设置布局,默认布局是边框布局。它将最后添加的组件拉伸到框架的大小。您可以将Layout设置为null,因此可以使用setBound absolute放置按钮。
命令:JFrame.setLayout(null);