Bagikan melalui


Format Nilai

Bagian ini mencantumkan nilai yang digunakan dengan parameter dwTextFlags dari fungsi DrawThemeText dan GetThemeTextExtent. Satu atau beberapa nilai ini digunakan untuk menentukan bagaimana string teks harus diformat. Fungsi DrawThemeText akan menggambar string teks di dalam persegi panjang tampilan, yang ditentukan oleh parameter pRect . Fungsi GetThemeTextExtent dapat digunakan untuk menentukan persegi panjang pembatas yang diperlukan untuk teks dengan panjang dan format tertentu.

Format Nilai

Tabel berikut mencantumkan nilai format.

Nilai Deskripsi
DT_BOTTOM Merender string teks di bagian bawah persegi panjang tampilan. Nilai ini hanya digunakan dengan nilai DT_SINGLELINE.
DT_CALCRECT Menentukan lebar dan tinggi persegi panjang tampilan.
DT_CENTER Tengahkan teks secara horizontal dalam persegi tampilan.
DT_EDITCONTROL Menduplikasi karakteristik tampilan teks dari kontrol pengeditan multibaris. Secara khusus, lebar karakter rata-rata dihitung dengan cara yang sama seperti untuk kontrol edit, dan fungsi tidak menampilkan baris terakhir yang terlihat sebagian.
DT_END_ELLIPSIS Memotong string teks yang lebih lebar dari persegi panjang tampilan dan menambahkan elipsis untuk menunjukkan pemotongan. String tidak dimodifikasi kecuali bendera DT_MODIFYSTRING ditentukan.
DT_EXPANDTABS Memperluas karakter tab. Jumlah karakter default per tab adalah delapan. Nilai DT_WORD_ELLIPSIS, DT_PATH_ELLIPSIS, dan DT_END_ELLIPSIS tidak dapat digunakan dengan nilai DT_EXPANDTABS.
DT_EXTERNALLEADING Menyertakan di depan eksternal font dalam tinggi garis. Biasanya, leading eksternal tidak disertakan dalam tinggi baris teks.
DT_HIDEPREFIX Mengabaikan karakter awalan & dalam teks. Huruf berikut tidak digarisbawahi, tetapi karakter awalan lainnya masih diproses. Misalnya:
string input: "A&bc&d"
normal: "Ab&d"
DT_HIDEPREFIX: "Abc&d"
DT_LEFT Meratakan teks ke kiri.
DT_MODIFYSTRING Memodifikasi string agar sesuai dengan teks yang ditampilkan. Nilai ini tidak berpengaruh kecuali DT_END_ELLIPSIS atau DT_PATH_ELLIPSIS ditentukan.
DT_NOCLIP Menggambar string teks tanpa mengklip persegi panjang tampilan.
DT_NOFULLWIDTHCHARBREAK Mencegah pemisah baris pada kumpulan karakter byte ganda (DBCS), sehingga aturan pemisah baris setara dengan kumpulan karakter byte tunggal (SBCS). Ini dapat digunakan, misalnya, untuk membuat label ikon yang ditulis dalam teks Korea lebih mudah dibaca. Nilai ini tidak berpengaruh kecuali DT_WORDBREAK ditentukan.
DT_NOPREFIX Menonaktifkan pemrosesan karakter awalan. Biasanya, DrawThemeText menafsirkan karakter awalan & sebagai direktif untuk menggarisbawahi karakter berikut, dan karakter awalan && & sebagai direktif untuk mencetak satu &. Dengan menentukan DT_NOPREFIX, pemrosesan ini dinonaktifkan. Misalnya:
string input: "A&bc&d"
normal: "Ab&d"
DT_NOPREFIX: "A&bc&d"
DT_PATH_ELLIPSIS Mengganti karakter di tengah teks dengan elipsis sehingga hasilnya pas di persegi panjang tampilan. Jika string berisi karakter garis miring terbalik (\), DT_PATH_ELLIPSIS mempertahankan sebanyak mungkin teks setelah garis miring terbalik terakhir. String tidak dimodifikasi kecuali bendera DT_MODIFYSTRING ditentukan.
DT_PREFIXONLY Hanya menggambar garis bawah pada posisi karakter setelah karakter awalan &. Biasanya DrawThemeText menafsirkan & sebagai direktif untuk menggarisbawahi karakter yang mengikuti dan karakter awalan && & sebagai direktif untuk mencetak satu &. Dengan menentukan DT_PREFIXONLY, tidak ada karakter yang digambar, hanya garis bawah. Spasi kosong ditempatkan di posisi di mana karakter biasanya akan muncul. Misalnya:
string input: "A&bc&d"
normal: "Ab&d
DT_PREFIXONLY: " "
DT_RIGHT Meratakan teks ke kanan.
DT_RTLREADING Menjabarkan teks dalam urutan kanan-ke-kiri untuk teks dua arah, misalnya, teks dalam font Ibrani atau Arab. Arah default untuk teks adalah kiri-ke-kanan.
DT_SINGLELINE Menampilkan teks pada satu baris. Pengangkutan kembali dan umpan baris tidak merusak garis.
DT_TABSTOP Mengatur perhentian tab.
DT_TOP Merender teks di bagian atas persegi panjang tampilan.
DT_VCENTER Tengahkan teks secara vertikal. Nilai ini hanya digunakan dengan nilai DT_SINGLELINE.
DT_WORDBREAK Memisahkan garis di antara kata jika kata akan meluas melewati tepi persegi panjang tampilan. Urutan return/line feed (CR/LF) carriage juga merusak garis.
DT_WORD_ELLIPSIS Memotong kata apa pun yang tidak pas di persegi panjang tampilan dan menambahkan elipsis.