我正在制作一个游戏,我有两个标签,播放器1和播放器2.在游戏开始之前,我想要一个弹出对话框,用户可以在播放器1和播放器2的名称中插入。下面是我的码。它应该将标签更改为插入的名称。
public void gui();
{
BorderLayout borderlayout = new BorderLayout();
JFrame frame = new JFrame("Games");
frame.setVisible(true);
frame.setSize(600,400);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Panel p2 = new Panel();
p2.setLayout(new BorderLayout());
p2.add(new Label("Player 1"), BorderLayout.WEST); //player 1 label
p2.add(new Label("Player 2"), BorderLayout.EAST); //player 2 label
p2.add(new Label("Board GAME"), BorderLayout.NORTH );
p2.setBackground(new Color(156, 93, 82));
p2.setFont(new Font("sansserif", Font.BOLD, 18));
frame.add(p2);
}
答案 0 :(得分:2)
您可以使用cass JOptionPane
String p1name = JOptionPane.showInputDialog(frame,"Please enter player 1 name","Specify name",JOptionPane.PLAIN_MESSAGE,);
答案 1 :(得分:1)
您需要先将JLabels
分配给变量:
JLabel player1Lbl = new JLabel("Player 1");
p2.add(player1Lbl, BorderLayout.WEST);
然后使用JOptionPane
从播放器中获取文本String player1Name = JOptionPane.showInputDialog("Player 1 enter your name");
然后设置标签
player1Lbl.setText(player1Name);
此方法不会检查用户是否输入了任何内容,因此字符串可能为空或为空,您可以查明如何检查...