2016-04-13 12 views
0

まず、私はJavaとNetbeansにはかなり慣れていません。私は、TCP/IP接続からいくつかの情報を収集するためのユーザーインターフェイスを設計し、それは正常に動作します。Netbeansを使用して別のクラスのラベルテキストを使用する

その後、「本当の」プロジェクトを実行するためのクラスを作成しました。ラベルからテキストを使用していくつかのコマンドを完了する必要があります。

client.readVariable(job_name); 
String a = job_name.toString(); 
jLabel1.setText(a); 
... 

だから私は、ボタン1がクリックされたときに、クラスを実行したい(と私は方法がわからない)とラベルの値を使用します。UIは、このような情報を収集します。どちらも同じパッケージに入っています。

job.setJob(jLabel1.getText); //kinda pseudocode 

私はそれをどのように管理できますか?よりクリーンな方法は何ですか?私は同じクラスに両方を置くべきであることを読んだが、何かがうまくいかないと恐れている。

ありがとう!あなたは、私は擬似コードを与えている、あなたの完全なコードについては言及しなかったとして

+0

フルコードを入力してください – prasad

+0

質問には「フルコード」がありません。私はそれが可能なのかどうか分かりません。私が持っているコードは、私が送る各コマンドです。つまり、 'job.setJob()'は手動で完了します。私はラベルテキストを使用しようとしています。 – noidea

答えて

0

は、
は一般的に、あなたがたActionListenerオブジェクトを作成し、そのボタンのactionPerformedメソッドが呼び出されるのonclickの後、Buttonコンポーネントには、このリスナーオブジェクトを登録する必要があり

class MyClass{ 
private JLabel myLabel; 
private JFrame mainFrame; 
private JButton myButton; 
MyClass(){ 
     mainFrame = new JFrame(); 
     mainFrame.setSize(400,400); 
     mainFrame.setLayout(new FlowLayout()); 
     myLabel= new JLabel("YourText"); 
     myButton = new JButton("Click"); 
     MyListener listener = new MyListener(myLabel.getText()); 
     myButton.addActionListener(listener); 
    } 

} 
class MyListener implements ActionListener{ 

private String jobText; 
private Job job;//Not Sure 
MyListener(String text){ 
    jobText = text; 
    job = new Job();//Not Sure 
} 
@Override 
public void actionPerformed(ActionEvent e) { 
    job.setJob(jobText); 
} 

} 
+0

私はあなたのやろうとしていることを理解していますが、これがどのように役立つのか分かりません。jButtonをクリックしたときにクラスを実行します。 – noidea

+0

あなたはフィルコードを与えなかったので、今すぐ試してみてください。コードを貼り付けると、私たちがどのように役立つかがわかります。「jButtonをクリックすると、クラスを実行しますか?」とはどういう意味ですか? – prasad

+0

遅れて申し訳ありません。私はclass.javaとgui.javaのパッケージを持っているとします。 GUI上のボタンをクリックすると、class.javaを実行できますか? – noidea

関連する問題