2013-04-01 35 views
3

我創建了一個由10個左右按鈕組成的小工具集。這些按鈕被添加到JToolBar。目前,默認情況下,它會在第一個按鈕周圍放置一個方塊;但是,我想要一個不同的按鈕是默認的。我怎樣才能做到這一點?以下是我如何添加按鈕的示例。我試過select.setSelected和其他一些方法,但沒有運氣。如何在JToolbar中默認選擇一個按鈕

JToolBar sideBar = new JToolBar(); 

    JButton select = new JButton(new ImageIcon("Media/select.png")); 
    select.setBorderPainted(false); 
    select.setContentAreaFilled(false); 

    sideBar.add(select); 

這裏的當前結果的圖像:

current result - notice square on top left button

+1

未來,打印屏幕會很有用,所以我們知道你所看到的「方塊」(在這種情況下,我認爲這是Swing分配的「聚焦」方塊) – CodeGuy

回答

2

如果你知道你想成爲積極的哪個按鈕,您可以使用

button.requestFocusInWindow(); 

您也可以嘗試在根窗格中設置默認按鈕,具體取決於您的Swing元素的設置。

rootPane.setDefaultButton(button); 

最後,有一個叫方便的方法setFocusedPainted(false);

+0

我試過這個,但是我試過沒有看到任何區別。藍色的焦點廣場仍然停留在第一個按鈕周圍。 – Pedrom

+0

請參閱更新以獲取更多選項 – CodeGuy

+1

-1,請勿使用requestFocus()(請參閱此方法的API),請使用requestFocusInWindow()。 – camickr

2

您可能要這樣設置一個按鈕,工具欄的默認按鈕:

yourToolBar.getRootPane().setDefaultButton(okButton); 

我經常使用的setDefaultButton方法在對話框中,所以用戶可以通過按[Enter]來選擇默認按鈕。

+0

謝謝Thorn,這對我的對話框很有用。 – Pedrom

相關問題