2012-02-23 56 views
1

jface.Action類有一個setActionDefinitionId方法。我想知道這是用於什麼。什麼是JFace Action的定義ID?

以下是從setAccelerator的javadoc:

如果您使用此方法設置的加速器,那麼就不會在工作臺上工作,如果它相沖突的任何現有鍵綁定,或者如果有一個不同的密鑰爲此定義的綁定操作的定義ID爲。應該使用定義ID來代替 - 引用應從中檢索密鑰綁定的工作臺中的命令。

我找不到任何有關定義ID的相關信息。

希望有人能幫忙。

回答

2

動作定義ID用於將動作綁定到命令。如果該命令的ID被設置爲該動作的動作定義ID,則該動作被視爲該命令的處理程序。

如果您想將Eclipse應用程序從使用操作遷移到使用命令框架,這非常有用。它允許進行平滑的遷移,因爲您可以重新使用現有代碼的一部分,而無需將所有操作轉換爲命令處理程序。

有關更多信息,請參見http://wiki.eclipse.org/FAQ_How_do_I_associate_an_action_with_a_command%3F