像JTextField
或JComboBox
這樣的GUI組件具有可以通過調用setName(..)
來設置的名稱屬性。Java GUI組件名稱的語法?
組件名是否包含每個字符?是否有任何定義組件名稱語法的源代碼?
背景:爲了讓用戶編寫FitNesse測試,我考慮使組件屬性與它們旁邊標籤的文本相同。但一些標籤包含空格或符號,例如連字符,句點,逗號等
像JTextField
或JComboBox
這樣的GUI組件具有可以通過調用setName(..)
來設置的名稱屬性。Java GUI組件名稱的語法?
組件名是否包含每個字符?是否有任何定義組件名稱語法的源代碼?
背景:爲了讓用戶編寫FitNesse測試,我考慮使組件屬性與它們旁邊標籤的文本相同。但一些標籤包含空格或符號,例如連字符,句點,逗號等
據我所知,你可以使用任何字符串:http://docs.oracle.com/javase/6/docs/api/java/awt/Component.html#setName%28java.lang.String%29
從Java源代碼。組件名稱是一個字符串,據說它可以爲空。設置名稱功能似乎並不具有任何限制或者:
public void setName(String name) {
String oldName;
synchronized(getObjectLock()) {
oldName = this.name;
this.name = name;
nameExplicitlySet = true;
}
firePropertyChange("name", oldName, name);
}
根據這一question,我覺得你不應該使用這些功能。如果你想使用它,任何角色都可以接受。至少在API中沒有關於禁止字符的內容。您的外觀可能只會遇到一些問題。