我是新來的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