|
|
Szöveg automatikus rövidítése kiíráskor
|
|
Példaprogram letöltése
5728 bájt
|
Ha úgy kell különféle feliratokat megjelenítenünk egy alkalmazásban, hogy a szöveg által elfoglalható terület mérete korlátozott és nem változhat, akkor előfordulhat, hogy a szövegünk hosszabb, mint amekkora hely rendelkezésre áll a kiíráshoz. Ilyen esetben rövidítenünk kell a szöveget, melyhez segítséget is kapunk a GDI+ által.
A megoldást a StringFormat osztályban kell keresnünk. Van ennek egy Trimming property-je, melyben azt szabályozhatjuk, hogy mi történjen akkor, ha egy szöveg kiírásakor elfogy a rendelkezésre álló terület. Mivel a szöveget a DrawString függvénnyel rajzoljuk ki, így itt egy Rectangle típusban meghatározhatjuk, hogy a szöveg megjelenítése mely téglalapban történjen. Alábbi példában a kirajzolást úgy végezzük el, hogy ha a szöveg nem fér el a megadott téglalapban, akkor csak annyi szó jelenjen meg, amennyi elfér, majd három ponttal legyen jelezve, hogy még lennének szavak a kiírandó szövegben, de helyhiány miatt azok már nem jelenhettek meg.
Dim sf As New StringFormat()
sf.Trimming = StringTrimming.EllipsisWord
g.DrawString(s, f, sb, r, sf)
g.DrawRectangle(p, r1)
A vágás módját a StringTrimming felsorolt típus elemei közül választhatjuk, melyek az alábbi értéket vehetik fel.
| Érték |
Leírás |
| Character |
A területen annyi karakter jelenik meg, amennyi csak lehetséges. |
| EllipsisCharacter |
A területen annyi karakter jelenik meg, amennyi csak lehetséges, de a hely elfogyása esetén a szöveg végén három pont kerül kirajzolásra jelezve, hogy nem fért ki a teljes felirat. |
| EllipsisPath |
A területen annyi karakter jelenik meg, amennyi csak lehetséges, de a hely elfogyása esetén a szöveg közepén három pont jelenik meg jelezve, hogy nem fért ki a teljes felirat. Ebben a módban tehát olvasható lesz a szöveg eleje és a vége is. |
| EllipsisWord |
A területen annyi szó jelenik meg, amennyi csak lehetséges, de a hely elfogyása esetén a szöveg végén három pont kerül kirajzolásra jelezve, hogy nem fért ki a teljes felirat. |
| None |
Nincs megadva vágás. |
| Word |
A területen annyi szó jelenik meg, amennyi csak lehetséges. |
|
Felhasználási feltételek
A Software Online szoftverfejlesztői magazin mindegyik cikke, minden megjelent képe, és egyéb publikált anyaga szerzői jog védelme alatt áll! Bármilyen formában történő másodlagos terjesztésük, közzétételük vagy felhasználásuk kizárólag a kiadó előzetes írásbeli engedélyével történhet!
|