Re: [問題] 兩個JFrame之間要怎麼傳值
※ 引述《smallsour (小酸)》之銘言:
: ※ 引述《jawwoeima (RYAN)》之銘言:
: : import B;
: : Class A extends JFrame
: : {
: : B b;
: : public A()
: : {
: : }
: : public void setB(B bb)
: : {
: : b = bb;
: : }
: : }
: : =============================
: : import A;
: : Class B extends JFrame
: : {
: : A a;
: : public B()
: : {
: : }
: : public void setA(A aa)
: : {
: : a = aa;
: : }
: : }
: : ================================
: : public static void main(String args[])
: : {
: : A a = nwe A();
: : B b = new B();
: : a.setB(b);
: : b.setA(a);
: : }
: : 沒試過,不過這樣應該可以吧
: import A; 跟 import B; 不能直接這樣用耶 compile 過不了
: 還有JDialog要怎樣用阿?
: 有人可以簡易示範給我看嗎
: 我只要把在Frame A 輸入數字 傳到 Frame B
: 我看了JDialog的API 不是很懂
如果你全部放在根目錄 (/) 沒有 package 的話,下面是個範例:
==A.java==
import javax.swing.JFrame;
import javax.swing.JOptionPane;
public class A extends JFrame {
public B b;
public String message;
public void showDialog() {
message = JOptionPane.showInputDialog(null);
}
}
==B.java==
import javax.swing.JFrame;
public class B extends JFrame {
public A a;
}
==Drive.java==
public class Drive {
public static void main(String[] args) throws Exception {
A a = new A();
B b = new B();
a.b = b;
b.a = a;
a.showDialog();
System.out.println(a.message);
System.out.println(b.a.message);
}
}
==執行結果==
┌────────────────────┐
│ 輸入 │
├────────────────────┤
│ ? _I___________________________ │
│ │
│ 確定 取消 │
└────────────────────┘
你輸入什麼,他就輸出什麼,舉例而言:123
那麼在 command line 會印出:123
==註==
你不能 import A 和 B,因為 A 和 B 沒有 package。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.116.247.13
→
06/26 22:07, , 1F
06/26 22:07, 1F
把某個很重要的東西改上去。
※ 編輯: H45 來自: 140.116.247.13 (06/26 22:13)
→
06/26 22:15, , 2F
06/26 22:15, 2F
推
06/26 23:32, , 3F
06/26 23:32, 3F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 4 之 4 篇):