FormText
控制項最強大的用法,
是將格式化的標示加入文字中。預期的 root 標示為 form
。
它可以有一或多個為 <p>
或 <li>
子項。
任一個都可以有一般文字、在 <b>
或
<span>
標示之間的文字、影像、鏈結和 SWT
控制項。影像會使用
<img href="image key"/>
(沒有內容)來宣告,
而鏈結則會利用 <a href="href">text</a>
來表示。
上述部分標示有其他的屬性。標示
<a>
可以接受 nowrap="true"
來避免鏈結折成新行。標示 <p>
可以有
vspace="false"
(預設值為 true
)屬性,
其會在段落之間加入額外的空白。標示 <li>
有比較多的屬性:
style - 可以是 text
、bullet
和 image
(預設值為 bullet
)
value - 不能用於 bullet
;如果樣式為
text
,則會呈現該值來代替項目符號;
如果樣式是 image
,值會代表要呈現之影像的影像表中的索引鍵,來代替項目符號
vspace - 與 'p
' 標示相同。
indent - 文字縮排的像素數
bindent - 項目符號縮排的像素數(這個數目與 'indent' 無關 - 請注意不要使其重疊)
會影響一般文字外觀的標示為 <b>
(作用如預期)以及 <span>
。
後者可讓您變更標示內文字的字型和/或顏色。
最後,可以使用 <br/>
標示加入軟性換行(請注意這是 XML,因此您不能像在 HTML 中一樣使用開放式的 <br>
)。
自 3.1 版開始,FormText
可以用來在文字、超鏈結和影像內混合 SWT 小組件。SWT 控制項會建立成
FormText
的子項,使 FormText
成為一種佈置管理程式,
並直接在 XML 中指出放置內嵌文字相關控制項的位置。
一個值得觀察的常見話題是,FormText
不負責載入影像、字型、
解析鏈結或顏色。這並不是瀏覽器,因此最好將這些事分開,
只要指派別處管理的影像和顏色即可。鏈結和影像兩者都只有 'href
'
屬性來參照它們。針對鏈結,這個屬性的值會於通知接聽器時,
提供在超鏈結事件中。您需要使用相符的 'href' 索引鍵,
以文字控制項登錄影像。如此一來,
控制項即不需要考慮載入影像的問題 - 這些影像會放在雜湊表中,
且可以立即呈現。
類似的做法也用在顏色與字型。顏色已由工具箱處理,
因此您可以呼叫 toolkit.getColors().createColor()
,
利用唯一鍵和 RGB 值,即可配置您需要的色彩數量。
剩下的就是在 'span
' 標示中設定所有參照的顏色,
使得控制項能夠在呈現期間加以使用。