Den mest kraftfulla användningen av kontrollen FormText
är när formateringskoder läggs till i texten. Den förväntade rotkoden är form
. Den kan ha en eller flera underordnade som kan vara <p>
eller <li>
. Båda kan ha normal text, text mellan koderna <b>
eller
<span>
, bilder, länkar och SWT
-kontroller. Bilder deklareras via <img href="bildkod"/>
(inget innehåll), medan länkar uttrycks med hjälp av <a href="href">text</a>
.
Vissa av ovannämnda koder har ytterligare attribut. Koden
<a>
kan acceptera nowrap="true"
för att hindra radbyte för länken. Koden <p>
kan ha attribut
vspace="false"
(true
som standard) som lägger till mer utrymme mellan paragrafer. Koden <li>
har fler attribut:
style - kan vara text
, bullet
och image
(standard är bullet
)
value - används inte för bullet
; om style är
text
, återges värdet istället för en punkt (bullet);
om style är image
, representerar värdet en kod i bildtabellen för en bild som ska återges istället för en punkt
vspace - detsamma som för koden 'p
'.
indent - antal pixlar för textindrag
bindent - antal pixlar för punktindrag (detta antal är beroende av 'indent' - var försiktig så att de inte överlappar varandra)
Koder som påverkar utseendet på normal text är <b>
(fungerar som förväntat) och <span>
. Med den senare kan du byta teckensnitt och/eller färg inom koden. Mjuk radbrytning kan läggas till med hjälp av koden <br/>
(observera att detta är XML, så du kan inte använda <br>
som i HTML).
Fr.o.m. version 3.1, kan FormText
användas till att blanda SWT-gränssnittkontroller i text, hyperlänkar och bilder. SWT-kontroller skapas som underordnade till FormText
, vilket gör FormText
till en sorts layouthanterare med instruktion om var kontrollen ska placeras i förhållande till texten som är inbäddad direkt i XML.
Observera att det inte är FormText
som läser in bilder, teckensnitt, identifierar länkar eller färger. Det är inte en webbläsare och det är mycket bättre att lägga bild- och färghantering någon annanstans. Både länkar och bilder har helt enkelt attributet 'href
' som hänvisning. För länkar finns detta attributvärde i hyperlänkshändelsen när lyssnare aviseras. Bilder måste registreras med textkontrollen med hjälp av matchande 'href'-kod. På detta sätt behöver inte kontrollen läsa in bilderna eftersom de finns i hash-tabellen och kan återges direkt.
Liknande metod har används för färger och teckensnitt. Färger hanteras redan av verktygssatsen. Du kan därför allokera så många färger du vill via en unik kod och RGB-värden genom att anropa toolkit.getColors().createColor()
. Vad som återstår är att ställa in alla de färger som hänvisas i koden 'span
' så att kontrollen kan använda dem vid återgivning.