2015-09-16 32 views
1

我希望能夠添加作爲JavaFX隨附的警報對話框控件的一部分提供的按鈕的加速鍵。如何在JavaFX 8警報上使用助記符

我不確定這是否可以使用標準警報類型錯誤,信息,確認,警告?

我創建了自己的登錄窗口 - 不使用警報的結構和它的工作原理如下:

enter image description here

當舞臺打開。

然後,當用戶點擊「ALT」鍵:

enter image description here

我想能夠「熱鍵」的警報系統的按鈕。但是,我不確定我是否可以使用標準警報,或者是否需要創建自己的警報,如果是,我應該如何執行此操作。

如果可能的話,我真的很想用本機的方式使用對話框。

謝謝。

+0

當在FXML內部設置助記符時,它們使用下劃線完成,如「_Menu」,是否已檢查? – FibreFoX

+0

這些是警報,所以我不在FXML中創建它們。警報a =新警報(AlertType.Confirmation);一場表演()。 –

+0

據我瞭解你的要求,你需要像[自定義登錄對話框](http://code.makery.ch/blog/javafx-dialogs- official /),它與純JavaFX 8 – FibreFoX

回答

0

據我瞭解你的問題,我認爲沒有一些額外的代碼是不可能的。

展望at the code of OpenJFX按鈕的標籤are localized和固定。

你可能只想在你自己的by using the apropiate constructor上創建一些按鈕,它需要一些按鈕來覆蓋現有的按鈕。

編輯:重新思考一切後,我試圖重新創建你的問題。 You can see that project on GitHub.

這是特殊代碼:

public void showCustomizedAlertWindow() { 
    Alert a = new Alert(AlertType.CONFIRMATION, "some content text", ButtonType.OK, ButtonType.CANCEL, ButtonType.FINISH); 
    ((Button) a.getDialogPane().lookupButton(ButtonType.FINISH)).setText("_finished"); 
    a.show(); 
} 

但要注意,要刪除的本地化支持該按鈕。