3

こんにちは私は同じ方法で作成された2つのフレームを持っています:

public class DateFilter extends JFrame {

private final JDateChooser dateChooser = new JDateChooser();
private final JDateChooser dateChooser_1 = new JDateChooser();
private final JComboBox comboBox = new JComboBox();
private final JButton filtruotiButton = new JButton();

public DateFilter() {
    super();
    setBounds(100, 100, 277, 167);
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    try {
        jbInit();
    } catch (Throwable e) {
        e.printStackTrace();
    }

}
private void jbInit() throws Exception {
    getContentPane().setLayout(null);
    setTitle("Priemimo datos filtras");
    setResizable(false);

    getContentPane().add(dateChooser);
    dateChooser.setBounds(70, 40, 117, 20);

    getContentPane().add(dateChooser_1);
    dateChooser_1.setBounds(70, 65, 117, 20);
    dateChooser_1.setEnabled(false);
...

たとえば、ボタンを使用してこのフレームのdateChooserから別のフレームのtextFieldに日付を配置する場合、あるフレームから別のフレームにデータを取得する方法を教えてください

4

1 に答える 1

5

最初のフレームのインスタンスを2番目のフレームに渡し、このインスタンスでメソッドを呼び出す必要があります。

小さなサンプルコード:

public class FrameA extends JFrame {

  public void setSomeDate() {
  }
}

public class FrameB extends JFrame {

  public void doSomething() {
    FrameA frameA = new FrameA();
    frameA.setSomeDate();
  }
}

あなたは初心者だと思ったので、このとてもシンプルで基本的な例で答えました。もちろん、より洗練された方法はMVCパターンを使用することです。

于 2011-08-22T07:17:53.930 に答える