私のJButtonとJTextAreaを、コードの真ん中に並べて整列しようとしています。私はいくつかのチュートリアルに続き、この時点まで来ました。私のプログラムを実行すると、テキスト領域とボタンはまだ上に並んでいます。助けて!ボタン、ラベル、およびテキストフィールドを整列するJava Swing
import java.awt.BorderLayout;
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;
public class Main extends JFrame implements ActionListener{
JPanel panel = new JPanel();
JButton button = new JButton("Confirm!");
JTextArea text = new JTextArea(1, 20);
public Main() {
super("Battleship!");
setLayout(new FlowLayout());
button.addActionListener(this);
setSize(600, 500);
setResizable(true);
button.setLayout(new FlowLayout(FlowLayout.CENTER));
text.setLayout(new FlowLayout(FlowLayout.CENTER));
panel.add(text, BorderLayout.SOUTH);
panel.add(button, BorderLayout.SOUTH);
add(panel);
setVisible(true);
}
public static void main(String[] args) {
new Main();
}
@Override
public void actionPerformed(ActionEvent e) {
button.setText(text.getText());
}
}
'BorderLayout'でしか管理できません利用可能な5つのポジションのいずれかに1つのコンポーネント。より良い解決策は、 'GridBagLayout'のようなより柔軟なレイアウトマネージャを使うことです。 – MadProgrammer
もう一つの素晴らしい選択肢はJavaFXライブラリです。あなたの問題を修正するのではなく、JavaFXライブラリが大好きです。 @ JacobB。 –
。 * "しかし、私はJavaFXライブラリが大好きです" *これは明確にトピック外のAPIを推薦するための言い訳ではありません。 –