Эй, ребята, я делаю эту игру tic-tac-toe и хочу знать, как сделать другую колонку справа. Вы лучше поймете визуально:Как сделать столбец в java swing пакете
это то, что я сделал в настоящее время:
Но если я добавить еще одну кнопку он просто идет вниз по вертикали. Как сделать так, чтобы он шел горизонтально к середине, поэтому я могу сделать свою игру с тик-таком.
Код:
import java.awt.Dimension;
import java.awt.Insets;
import javax.swing.BorderFactory;
import javax.swing.BoxLayout;
import javax.swing.JButton;
import javax.swing.JCheckBox;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import sun.org.mozilla.javascript.internal.xml.XMLLib.Factory;
public class TicTacToe {
JFrame frame;
JPanel contentPane;
JButton row1col1;
JButton row1col2;
JButton row1col3;
JButton row2col1;
JButton row2col2;
JButton row2col3;
JButton row3col1;
JButton row3col2;
JButton row3col3;
public TicTacToe() {
// TODO Auto-generated constructor stub
frame = new JFrame("Fds");
contentPane = new JPanel();
contentPane.setLayout(new BoxLayout(contentPane,BoxLayout.Y_AXIS));
contentPane.setBorder(BorderFactory.createEmptyBorder
(10, 10, 10, 10));
row1col1 = new JButton();
row1col1.setMargin(new Insets(10, 10, 10, 10));
contentPane.add(row1col1);
row1col2 = new JButton();
row1col2.setMargin(new Insets(10, 10, 10, 10));
contentPane.add(row1col2);
row1col3 = new JButton();
row1col3.setMargin(new Insets(10, 10, 10, 10));
contentPane.add(row1col3);
row2col1 = new JButton();
row2col1.setMargin(new Insets(10, 10, 10, 10));
contentPane.add(row2col1);
row2col2 = new JButton();
row2col2.setMargin(new Insets(10, 10, 10, 10));
contentPane.add(row2col2);
row2col3 = new JButton();
row2col3.setMargin(new Insets(10, 10, 10, 10));
contentPane.add(row2col3);
frame.setContentPane(contentPane);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.pack();
frame.setVisible(true);
}
private static void runGUI() {
JFrame.setDefaultLookAndFeelDecorated(true);
TicTacToe greeting = new TicTacToe();
}
public static void main(String[] args) {
/* Methods that create and show a GUI should be
run from an event-dispatching thread */
javax.swing.SwingUtilities.invokeLater(new Runnable() {
public void run() {
runGUI();
}
});
}
}
Вы можете использовать GridLayout вместо вашего BoxLayout. – Berger