Java 将字符串数组添加到JList
我试图将我的字符串数组放入JList,但什么也没发生。 我做错了什么Java 将字符串数组添加到JList,java,arrays,swing,jlist,windowbuilder,Java,Arrays,Swing,Jlist,Windowbuilder,我试图将我的字符串数组放入JList,但什么也没发生。 我做错了什么 JList<String> list = new JList<String>(); list.setBounds(22, 111, 190, 395); jpPanel.add(list); btnTestList.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent a
JList<String> list = new JList<String>();
list.setBounds(22, 111, 190, 395);
jpPanel.add(list);
btnTestList.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
String [] testArray = {"a","b","c"};
list.setListData( testArray);
}
});
JList list=new JList();
名单.挫折(22、111、190、395);
jpPanel.add(列表);
btnTestList.addActionListener(新ActionListener(){
已执行的公共无效操作(操作事件arg0){
字符串[]testArray={“a”、“b”、“c”};
list.setListData(testArray);
}
});
您的代码正常,请尝试通过代码在其他地方查找错误。下面是一个示例,它演示了代码的这一部分确实是可行的,这可能会帮助您发现错误
public class NewJPanel extends JFrame {
public NewJPanel() {
this.setSize(400, 300);
this.setDefaultCloseOperation(EXIT_ON_CLOSE);
Container container = this.getContentPane();
JPanel jpPanel = new JPanel ();
container.add(jpPanel);
GridBagLayout gridBagLayout = new GridBagLayout();
jpPanel.setLayout(gridBagLayout);
JButton btnTestList = new JButton("New button");
jpPanel.add(btnTestList);
JList<String> list = new JList<String>();
GridBagConstraints gbc_list = new GridBagConstraints();
gbc_list.fill = GridBagConstraints.BOTH;
gbc_list.gridx = 0;
gbc_list.gridy = 1;
jpPanel.add(list, gbc_list);
btnTestList.addActionListener(new ActionListener () {
public void actionPerformed(ActionEvent e) {
String [] testArray = {"a","b","c"};
list.setListData( testArray);
}
});
}
public static void main(String[] args) {
NewJPanel jPnl = new NewJPanel ();
jPnl.setVisible(true);
}
}
公共类NewJPanel扩展了JFrame{
公共NewJPanel(){
这个。设置大小(400300);
此.setDefaultCloseOperation(关闭时退出);
容器容器=this.getContentPane();
JPanel-jpPanel=newjpanel();
container.add(jpPanel);
GridBagLayout GridBagLayout=新的GridBagLayout();
jpPanel.setLayout(gridBagLayout);
JButton btnTestList=新JButton(“新按钮”);
jpPanel.add(btnTestList);
JList list=新JList();
GridBagConstraints gbc_list=新的GridBagConstraints();
gbc_list.fill=GridBagConstraints.BOTH;
gbc_list.gridx=0;
gbc_list.gridy=1;
jpPanel.add(列表,gbc_列表);
btnTestList.addActionListener(新ActionListener(){
已执行的公共无效操作(操作事件e){
字符串[]testArray={“a”、“b”、“c”};
list.setListData(testArray);
}
});
}
公共静态void main(字符串[]args){
NewJPanel-jPnl=newnewjpanel();
jPnl.setVisible(true);
}
}
如果您有问题,请向我们展示MCVE:。因为不清楚你到底在尝试什么,你尝试过什么,没有尝试过什么。@Marcel。很好的建议。还有一个提示:[mcve]
在注释中自动扩展到。Java GUI必须在不同的操作系统、屏幕大小、屏幕分辨率等上工作。在不同的地区使用不同的PLAF。因此,它们不利于像素完美布局。而是使用布局管理器,或者与布局填充和边框一起使用。当您按下此按钮时,字符串数组被设置为JList(我猜它是一个按钮)。你按这个按钮了吗?我当然按了