JavaTM 2 Platform
Standard Ed. 6

javax.swing.text
介面 AttributeSet

所有已知子介面:
MutableAttributeSet, Style
所有已知實作類別:
AbstractDocument.AbstractElement, AbstractDocument.BranchElement, AbstractDocument.LeafElement, DefaultStyledDocument.SectionElement, HTMLDocument.BlockElement, HTMLDocument.RunElement, SimpleAttributeSet, StyleContext.NamedStyle, StyleContext.SmallAttributeSet

public interface AttributeSet

唯一屬性的集合。這是只讀的、不可變的介面。屬性基本上是鍵和與該鍵關聯的值。該集合可能表示類似於 run 樣式、邏輯樣式等內容。這些內容通常用於描述某個圖形表示形式(如字體)的功能。可能鍵的集合是無界的,並且可以是任何內容。通常,View 實作將回應屬性定義並呈現某些內容來表示該屬性。

可以以層次結構的方式解析各個屬性。如果某個鍵無法在本地解析,且它存在解析父集合,則通過該父集合來解析該鍵。

另請參見:
MutableAttributeSet

巢狀類別摘要
static interface AttributeSet.CharacterAttribute
          此介面是型別簽章,可出現在任意屬性鍵上以說明實作字元級的表示。
static interface AttributeSet.ColorAttribute
          此介面是型別簽章,可出現在任意屬性鍵上以說明實作顏色的表示。
static interface AttributeSet.FontAttribute
          此介面是型別簽章,可出現在任意屬性鍵上以說明確定使用何種字體來呈現某類別文本。
static interface AttributeSet.ParagraphAttribute
          此介面是型別簽章,可出現在任意屬性鍵上以說明實作段落級的表示。
 
欄位摘要
static Object NameAttribute
          用於命名屬性集合的屬性名。
static Object ResolveAttribute
          用於標識解析父集合屬性集(如果已定義)的屬性名。
 
方法摘要
 boolean containsAttribute(Object name, Object value)
          如果此集合用相同的名稱和相等值定義一個屬性,則返回 true
 boolean containsAttributes(AttributeSet attributes)
          如果此集合用相等值定義給定集合中的所有屬性,則返回 true
 AttributeSet copyAttributes()
          返回保證固定不變的屬性集。
 Object getAttribute(Object key)
          獲取給定屬性的值。
 int getAttributeCount()
          返回此集合中本地定義的屬性個數。
 Enumeration<?> getAttributeNames()
          返回集合中本地定義的屬性名稱的列舉。
 AttributeSet getResolveParent()
          獲取解析父集合。
 boolean isDefined(Object attrName)
          檢查指定屬性是否具有該屬性集中指定的值,而無需通過其他屬性集進行解析。
 boolean isEqual(AttributeSet attr)
          確定兩個屬性集是否相等。
 

欄位詳細資訊

NameAttribute

static final Object NameAttribute
用於命名屬性集合的屬性名。


ResolveAttribute

static final Object ResolveAttribute
用於標識解析父集合屬性集(如果已定義)的屬性名。

方法詳細資訊

getAttributeCount

int getAttributeCount()
返回此集合中本地定義的屬性個數。不包括父集合中定義的屬性。

返回:
屬性數,該數 >= 0

isDefined

boolean isDefined(Object attrName)
檢查指定屬性是否具有該屬性集中指定的值,而無需通過其他屬性集進行解析。

參數:
attrName - 屬性名
返回:
如果該屬性具有指定的值,則返回 true

isEqual

boolean isEqual(AttributeSet attr)
確定兩個屬性集是否相等。

參數:
attr - 屬性集
返回:
如果兩個屬性集相等,則返回 true

copyAttributes

AttributeSet copyAttributes()
返回保證固定不變的屬性集。

返回:
屬性集的一個副本

getAttribute

Object getAttribute(Object key)
獲取給定屬性的值。如果在本地未找到該值,則繼續向上搜尋解析父集合(如果存在),直至找到該值或沒有其他的父集合為止。如果未找到該值,則返回 null。

參數:
key - 該屬性綁定的非 null 鍵
返回:

getAttributeNames

Enumeration<?> getAttributeNames()
返回集合中本地定義的屬性名稱的列舉。不包括在解析父集合中定義的屬性名稱(如果有)。Enumeration 的值可以是任何內容,而不僅限於特定的 Object 型別。

此方法不返回 null。對於沒有屬性的集合,此方法返回空 Enumeration

返回:
名稱

containsAttribute

boolean containsAttribute(Object name,
                          Object value)
如果此集合用相同的名稱和相等值定義一個屬性,則返回 true 。如果在本地沒有找到這種屬性,則在解析父集合層次中進行搜尋。

參數:
name - 非 null 的屬性名
value - 值
返回:
如果集合用相等值定義該屬性,不管是在本地還是通過其解析父集合,都返回 true
拋出:
NullPointerException - 如果 namevaluenull

containsAttributes

boolean containsAttributes(AttributeSet attributes)
如果此集合用相等值定義給定集合中的所有屬性,則返回 true。如果在本地沒有找到屬性,則在解析父集合層次中進行搜尋。

參數:
attributes - 要檢查的屬性集
返回:
如果此集合用相等值定義所有屬性,不管在本地還是通過其解析父集合,都返回 true
拋出:
NullPointerException - 如果 attributesnull

getResolveParent

AttributeSet getResolveParent()
獲取解析父集合。

返回:
父集合

JavaTM 2 Platform
Standard Ed. 6

提交錯誤或意見

版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only