我是新来的java,我需要一些帮助!如何将不同按钮的数组链接在一起?
在我的代码很长一段时间后,我终于找到了我的代码问题。问题是我有3个独立的按钮是私人无效的,如果这与任何事情有关,并且每个按钮都假设从我的数组中添加/减去字符串。我有一个名为strArray的数组和3个按钮,当点击,初始化,添加和删除时,这些按钮会被修改。第一个按钮是初始化,当点击输出时
private void togbtnInitializeActionPerformed(java.awt.event.ActionEvent evt) {
togbtnAdd.setEnabled(true);
togbtnRemove.setEnabled(true);
togbtnDisplay.setEnabled(true);
String[] strArray = {"Calvin Harris - Overdrive(Part 2)", "DVBBS & Borgeous - TSUNAMI", "Martin Garrix - Tremor", "Martin Garrix - Animals", "Firebeatz - Max Ammo"};
int intArrayLength = strArray.length;
for (int i = 0; i < intArrayLength; i++){
this.txtAreaOutput.setText(txtAreaOutput.getText() + "\n" + strArray[i]);
}
togbtnInitialize.setEnabled(false);
}
成文本区域在我的gui中。所以现在我输出了这个,Initialize按钮被禁用,并且Add和Remove被启用。这是我发现问题的地方。在我输入一个字符串并单击添加按钮后,它不会将字符串添加到在初始化按钮代码中键入的strArray中。我通过使用“add”按钮打印strArray来检查它,它只保存了我刚刚添加的那个。
private void togbtnAddActionPerformed(java.awt.event.ActionEvent evt) {
strArray.add(this.txtInputName.getText());
System.out.println(strArray);
this.txtAreaOutput.setText(txtAreaOutput.getText() + "\n" + strArray.get(strArray.size()));
}
我怎么能连接所有strArrays在一起,这样,如果我做了什么把它与一个按钮,它也改变了strArray中的其他按钮?提前致谢!
编辑:我仍然无法访问strArray,除非在我的按钮中为它创建一个变量。
公共类U3A4_CDCollection扩展javax.swing.JFrame中{
public U3A4_CDCollection() {
initComponents();
ArrayList<String> strArray = new ArrayList<String>();
strArray.add("Calvin Harris - Overdrive(Part 2)");
strArray.add("DVBBS & Borgeous - TSUNAMI");
strArray.add("Martin Garrix - Tremor");
strArray.add("Martin Garrix - Animals");
strArray.add("Firebeatz - Max Ammo");
}
使'strArray'成为一个实例字段,以便每个按钮都可以访问它。将它封装在某种模型中会更好,但这将是一个开始... – MadProgrammer
对不起,你能解释我怎么做到这一点,或给我一个链接,我可以在哪里学习? – whatyouwant229
[了解班级成员](https://docs.oracle.com/javase/tutorial/java/javaOO/classvars.html) – MadProgrammer