这个怎么运作?
- MiWindows 类负责运行 MiOtherWindows 类。
- MiOtherWindows 类与更改其状态并关闭的用户进行交互。
- MiWindows 类检测 MiOtherWindows 类中值的变化。
- Class MiWindows 打印出更改。
问题是什么?MiWIndows 类没有检测到子类 MiOtherWindows 中的变化。
问题?
如何制作一个窗口我可以在不使用线程的情况下收听另一个窗口?
//------------------------------------------------ ------------------
//这里是 MiWindows 的代码
public class MiWindows extends JDialog {
private JButton doing = new JButton("The Button");
public MiWindows(SeconWindows owner) {
doing.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
Object value;
try {
value = new MiOtherWindows(MiWindows.this).getValue();
if (value != null) {
System.out.println("Never Print this...");
}
} catch (Exception x) {
System.out.println("exception");
}
}
});
}
}
//------------------------------------------------ ------------------
//这里是 MiOtherWindows 的代码
public class MiOtherWindows extends JDialog {
private JButton close = new JButton("The Button");
private String value = null;
public MiOtherWindows(JDialog owner) {
super(owner);
//super(owner, true); modal don't work
close.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
this.value = "This is Result";
setVisible(false);
}
});
}
public String getValue() {
return value;
}
}