2011-08-15 19 views
4

私はSakila Sample Databaseでサンプルアプリケーションを作成しています。私はGUIのためのeclipse/windowsbuilderを使用しています。私は3つのクラスを持っています。コンポーネント値を確認するためのVALIDATION、SQLクエリを完了するCONNECTOR、コンポーネントを持つMAINクラスです。私の問題は、別のクラスのコンポーネントにアクセスできないことです。同じパッケージ内のそれらのすべては、クラスのためのpublic修飾子にアクセスします。別のクラスからのJava Swing/AWTコンポーネントへのアクセス

私は以下を試しました。

public class Connector{ 

    MovieDB mdb; 

    public Connector(MovieDB m){ 

     mdb = m; 
    } 
} 

public class MovieDB extends JFrame { 

    Connector db = new Connector(this); 
} 

しかし、それでもまだ、私はコンポーネントにアクセスすることはできませんし、私はうつ病PLSのヘルプでは、M :)

+4

GUI間オブジェクト通信は、必要であれば多くの場合、設計パターンを使用して、他の非GUIプログラムとのオブジェクト間通信と同じです。例:[send-messages-between-two-jpanel-objects](http://stackoverflow.com/questions/7053283/sending-messages-between-two-jpanel-objects/7054114#7054114) –

+0

良い例[schema ](http://dev.mysql.com/doc/sakila/ja/images/sakila-schema.png)。 – trashgod

+0

ありがとうホバークラフトのソリューションは単純でしたが、私は変数にアクセスする必要があったので、私はあなたのコードブロックの一部を取った。 public String getNorthFieldText(){ return northField.getText(); } – HRgiger

答えて

2

コンポーネントのアクセス修飾子をチェックして、彼らがプライベートでないことを確認してください。

関連する問題