我有一个问题,关于如何制作可复制的JLabel。我有一个下拉菜单,它接收输入并将其显示为JLabel,当菜单更改时,标签也会更改。然而,我想使JLabel可复制。我听说这是不可能的,所以我将标签更改为字符串,并将其输出为textarea。但是当我这样做时,当我从下拉菜单中选择一个新选项时,该字符串不会更改。由于我是Java的新手,请尽可能详细地解释,谢谢。
这里是我的一些代码片段。我真的只需要一种方法来使JTextArea/JLabel可复制并且能够更改。
这里是我的一些代码片段。我真的只需要一种方法来使JTextArea/JLabel可复制并且能够更改。
String[] players = {"Nearest Player", "All Players", "Random Player"};
JComboBox<String> player = new JComboBox<String>(players);
JLabel playernumb = new JLabel ("@p");
JLabel playerprompt = new JLabel("Target Player:");
JTextPane box = new JTextPane();
public static void main(String[] args) {
mc frame = new mc();
frame.setVisible(true);
}
player.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
if (e.getSource() == player){
JComboBox temp1 = (JComboBox)e.getSource();
String playertxt = (String)temp1.getSelectedItem();
switch (playertxt){
case "Nearest Player": playernumb.setText("@p");
break;
case "All Players": playernumb.setText("@a");
break;
case "Random Player": playernumb.setText("@r");
break;
default: break;
}
}
}
});
add(playerprompt);
add(player);
box.insertComponent(playernumb);