2013-07-04 40 views
1

我是Java的初學者。我在Eclipse中使用WindowBuilder開發了一個GUI。我想使用這個GUI來從用戶那裏獲得輸入並將它傳遞給執行一些操作的Java程序。基本上我想使用GUI作爲Eclipse中Console的替代品,用於輸入輸入。我該怎麼做呢?使用WindowBuilder作爲Java程序的GUI

請給我一些教程或例子,可以幫助。謝謝!

回答

3

首先,您可以查看here瞭解如何實現按鈕的示例。您也可以瀏覽該網站的其他組件。

一般的概念是,你可以用Window Builder直觀地創建你的GUI。然後,您可以附加操作處理程序,這些處理程序在對象被觸發時調用。因此,例如在ordeer執行一些動作時,按下按鈕,你做這樣的事情:在主代碼

createGUI(this); 

在GUI代碼:

class MyGui 
{ 
    private JButton jButton; 
    private MyButtonListener mListener; 

    public void createGUI(MyButtonListener oListener) 
    { 
     mListener = oListener; 
     createGUIElements(); 
    } 

    private createGUIElements() 
    { 
     jButton = new JButton(); 
     jButton.setText("MyButton"); 
     jButton.addActionListener(new java.awt.event.ActionListener() 
     { 
      public void actionPerformed(java.awt.event.ActionEvent e) 
      { 
       mListener.onButtonClicked(e);    
      } 
     }); 
    } 
} 

或在主應用程序中直接創建動作偵聽器的另一種方法,並且將其傳遞給GUi元素。

class MyGui 
{ 
    private JButton jButton; 
    private ActionListener mListener; 

    public void createGUI(ActionListener oListener) 
    { 
     mListener = oListener; 
     createGUIElements(); 
    } 

    private createGUIElements() 
    { 
     jButton = new JButton(); 
     jButton.setText("MyButton"); 
     jButton.addActionListener(mListener); 
    } 
} 

主要適用於大多數其他控件,所以你可以在一個組合框,複選框等附加動作處理程序相同..

所以上手,只需創建一個簡單的窗口單按鈕並嘗試按下按鈕時執行某些操作。

+0

謝謝!我會看看教程。現在我的WindowBuilder和Java程序在Eclipse中處於不同的包中。當我運行程序時,我想讓WindowBuilder GUI顯示出來以獲取Java程序的輸入。我怎麼做? – user2358330

+0

正如我所說,通過使用聽衆。如果你想從GUI代碼中分離Java代碼,你總是可以提供一些函數來轉發監聽器的附加功能,或者你可以實現一個按鈕監聽器可以調用的接口。因此,您定義了一個像MyButtonListener這樣的接口,並在主應用程序中實現了一些功能,當用戶按下按鈕時,就可以調用該接口函數。 – Devolus

+0

好吧,我現在得到它..謝謝! :) – user2358330