2009-11-08 63 views
0

我明白,這可能是不可能的,但我肯定想知道是否有人已經做到了這一點,或有一個變通。添加SWT窗口小部件,擺動的JPanel

我有一個SWT按鈕和我想只用按鈕存在覆蓋現有的JPanel的內容。我目前的策略是有SWT按鈕作爲初始的空場,然後將它通過一種方法,這將刷新的JPanel用SWT按鈕。

Button ibutton = null; 

以下是從我的構造函數取(類extends JPanel):

ibutton.addListener(SWT.Selection, new Listener() { 
public void handleEvent(Event e) { 
switch (e.type) { 
case SWT.Selection: 
} 
} 


    }); 

add(ibutton); //add is the usual swing assignment function 
          // and thus does not work. 

如果有另一種方式來達致這,我會感激之餘聽聽你有什麼。

+0

因爲我已經發現了這個類,它可以幫助可能導致我: http://mobius.inria.fr/eclipse-doc/org/eclipse/swt/awt/SWT_AWT.html 我仍然相當不確定但是如何實施它。 我希望得到一些指導。 – 2009-11-09 20:29:00

回答

3

你必須做這樣的事情:

Canvas canv = new Canvas(); 
add(canv);//add to ur parent container 
Shell shell = SWT_AWT.new_Shell(display, canv); 
shell.add(ibutton); 

有以下幾點要注意的,因爲你似乎是新來的SWT_AWT橋:

  1. 應該已經顯示父(應該創建對等體)到上面的代碼被調用時。
  2. 並行線程應該讀取和分派從顯示的事件。
+2

請你能否詳細說明1和2,因爲我有這個例外? – MrD 2013-01-24 22:48:45