好吧,所以基本上我很難用Java Swing JButton來執行一些操作。我有一種感覺,我的問題是,對於熟練的程序員,我的「基本」問題如此光禿:按鈕點擊修改變量/其他swing對象
我想要做的是修改其他JComponent的內容,並可能修改按鈕單擊某些變量。看起來相對容易,但我想在「已經聲明」的變量(或已經創建的JComponents)上執行它
無論我在哪裏搜索,我總是會得到一些例子,其中一切都是從頭開始聲明的ActionPerformed函數JButton的,就像這裏:
http://zetcode.com/tutorials/javaswingtutorial/swingevents/ //上面可以看到,在「的actionPerformed」功能,他們定義新的變量,如:串/日期/區域/ StringBuffer的
這樣的解決方案不被滿足我的需求任何手段。我想修改/顯示之前由於用戶點擊使用屬於不同類別的功能而定義的變量。
好吧也許會更清楚,如果我會告訴你我想在示範源代碼做什麼:
class Number_String {
public String change_add_MOD (String sss){
String str_modified = sss + "_modified";
return str_modified;
}
public int change_plus1 (int z){
int z_modified = z + 1;
return z_modified;
}
public static void main(String[] args) {
// TODO code application logic here
}
}
public class probTESTswing extends javax.swing.JFrame {
public probTESTswing() {
initComponents();
}
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
jLabel1.setText("done");
jLabel2.setText(mystring2);
jLabel3.setText(ns.change_add_MOD(mystring3));
}
public static void main(String args[]) {
Number_String ns=null;
String first_str="myFIRSTstring";
String mystring2 = ns.change_add_MOD(first_str);
String mystring3 = "third_str";
probTESTswing testing= new probTESTswing();
testing.setVisible(true);
}
}
問候大家誰作出努力,讓這裏;)
So lem簡單地解釋:
主類是「swing gui」,其中main()函數使用第二類初始化一些變量,現在我想要顯示使用我的Number_String類「處理」這些變量的結果,但是Java拒絕配合我的編程技巧你可能注意到了一些基本知識。
你可以觀察到我想用兩種方式做「它」:其中jButton1ActionPerformed裏面我想從我的Number_String類(使用'mystring3')訪問函數,另一種方式我想以訪問剛纔定義的變量(mystring2)
任何幫助極大APARECIATED。
我應該「重載」jButton1ActionPerformed函數(爲了將變量作爲參數)? (是的,我知道它的私人 - >我用Netbeans Swing設計器創建它) - 我應該手動設計我的GUI,然後超載它們? (不知道這樣的過載是否可能)
或者我應該爲我想用我的Jbutton修改的變量定義一些「緩衝區」(整數和字段爲字符串的字段),然後將它們放在「probTESTswing 「班? (+編寫相應的函數來處理,我使用它的功能,這樣的方式對其他類?)
或可能(因爲我NUMBER_STRING不具有任何變量 - 只是功能)移動到GUI類的功能(probTESTswing)
或者我應該使用一些指針/引用?(是啊,這似乎是我需要在這裏,不幸的指針/引用是我什麼都不知道的:(但是,我想學習它很多,因爲它似乎是強制性的,因爲我現在發現 - 很難找到教程你,因爲據我所知沒有指針,我不知道如何使用引用以這種方式,使所需的功能將實現 - 正如你可以看到我的問題)
或者也許有完全不同的方式來處理正是這樣的問題/個案?
請微啓我,我想「有效地」解決我的問題,在一個良好的編程方式,爲了學習高效,優化,合理,快速解決方案,如何永遠不會絕望的幫助,所以任何建議非常感謝。
問候
我很抱歉,但只是太多的文字,它的書面太差,我真正花時間和破譯這一切。我認爲本教程將幫助您 - http://download.oracle.com/javase/tutorial/uiswing/index.html – mre