gpt4 book ai didi

java - 数组之间的交互(Java 新手)

转载 作者:行者123 更新时间:2023-11-30 07:29:48 25 4
gpt4 key购买 nike

我目前正在使用 JFrame 开发一个小游戏(石头、剪刀、布),它运行良好!

唯一的问题是我无法让欢迎屏幕上的文本和按钮按照我想要的方式“排列”。

我制作了两个 JLabel 和字体数组,但我不知道如何制作它们...注意 eatchother。

JLabel [] labels = {(new JLabel("*****VÄLKOMMEN TILL MITT SPEL!*****")),new JLabel("Reglerna är enkla: "),new JLabel(" Du tävlar mot datorn i helt vanlig sten, sax, påse."),new JLabel("Du väljer ett drag med hjälp av knapparna."),new JLabel("Datorn slumpgenererar mellan de tre alternativen."),new JLabel("Först till den angivna poängen vinner!"),new JLabel("REDO ATT STARTA?")};

Font [] Typsnitt = {(new Font("Serif", Font.PLAIN, 24)),(new Font("Calibri", Font.PLAIN, 15)),(new Font("Calibri", Font.PLAIN, 15)),(new Font("Calibri", Font.PLAIN, 15)),(new Font("Calibri", Font.PLAIN, 15)),(new Font("Calibri", Font.PLAIN, 15)),(new Font("Calibri", Font.PLAIN, 60))};

我有一张照片,但由于“名誉原因”无法上传

这是欢迎窗口的所有代码。

import java.awt.event.*;
import javax.swing.JButton;
import java.awt.*;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JTextField;
public class SimpeltSpel extends JFrame {
public static void main(String[] args) {
SimpeltSpel ny = new SimpeltSpel();
ny.setVisible(true);

}
public JButton JaKnapp;
public JButton NejKnapp;
public JButton Sten;
public JButton Sax;
public JButton Påse;
{
JaKnapp = new JButton();
JaKnapp.setText(" Ja ");

NejKnapp = new JButton();
NejKnapp.setText(" Nej ");
}

public SimpeltSpel() {
super("Sten,Sax,Påse!");
this.setSize(new Dimension(500,500));
this.setResizable(false);
setLayout(new FlowLayout());

JLabel [] labels = {(new JLabel("*****VÄLKOMMEN TILL MITT SPEL!*****")),new JLabel("Reglerna är enkla: "),new JLabel(" Du tävlar mot datorn i helt vanlig sten, sax, påse."),new JLabel("Du väljer ett drag med hjälp av knapparna."),new JLabel("Datorn slumpgenererar mellan de tre alternativen."),new JLabel("Först till den angivna poängen vinner!"),new JLabel("REDO ATT STARTA?")};
Font [] Typsnitt = {(new Font("Serif", Font.PLAIN, 24)),(new Font("Calibri", Font.PLAIN, 15)),(new Font("Calibri", Font.PLAIN, 15)),(new Font("Calibri", Font.PLAIN, 15)),(new Font("Calibri", Font.PLAIN, 15)),(new Font("Calibri", Font.PLAIN, 15)),(new Font("Calibri", Font.PLAIN, 60))};

labels[0].setHorizontalTextPosition(JLabel.CENTER);

for (int i = 0; i<7; i++){
getContentPane().add(labels[i]);
}
add(JaKnapp);
add(NejKnapp);

setLocationRelativeTo(null);
setVisible(true);
Knappar behandlare = new Knappar();
JaKnapp.addActionListener(behandlare);
NejKnapp.addActionListener(behandlare);

}
private class Knappar implements ActionListener{
public void actionPerformed (ActionEvent event){
Object KnappTryck = event.getSource();
if (KnappTryck == NejKnapp){
System.exit(0);
}
else if (KnappTryck == JaKnapp) {

}
}
}
}

最佳答案

如果您希望布局看起来像网格,请使用 GridLayout有 2 列。在添加任何组件之前设置它:

setLayout(new GridLayout(0, 2));

来自 GridLayout 的 API 文档:

The GridLayout class is a layout manager that lays out a container's components in a rectangular grid.


请注意,您今天使用的是 FlowLayout它在定向流中布置组件,引用自 API:

A flow layout arranges components in a directional flow, much like lines of text in a paragraph. The flow direction is determined by the container's componentOrientation property and may be one of two values:

关于java - 数组之间的交互(Java 新手),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8302532/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com