Bagikan melalui


TTM_ADJUSTRECT pesan

Menghitung persegi panjang tampilan teks kontrol tipsalat dari persegi panjang jendelanya, atau persegi panjang jendela tipsalat yang diperlukan untuk menampilkan persegi panjang tampilan teks tertentu.

Parameter

wParam

Nilai yang menentukan operasi mana yang akan dilakukan. Jika TRUE, lParam digunakan untuk menentukan persegi panjang tampilan teks dan menerima persegi panjang jendela yang sesuai. Jika FALSE, lParam digunakan untuk menentukan persegi jendela dan menerima persegi panjang tampilan teks yang sesuai.

lParam

Struktur RECT untuk menahan persegi panjang jendela tipsalat atau persegi panjang tampilan teks.

Nilai kembali

Mengembalikan nilai bukan nol jika persegi berhasil disesuaikan, dan mengembalikan nol jika terjadi kesalahan.

Keterangan

Pesan ini sangat berguna ketika Anda ingin menggunakan kontrol tipsalat untuk menampilkan teks lengkap string yang biasanya terpotong. Ini umumnya digunakan dengan kontrol tampilan daftar dan tampilan pohon. Anda biasanya mengirim pesan ini sebagai respons terhadap kode pemberitahuan TTN_SHOW sehingga Anda dapat memposisikan kontrol tipsalat dengan benar.

Persegi panjang jendela tipsalat agak lebih besar dari persegi panjang tampilan teks yang mengikat string tipsalat. Asal jendela juga diimbangi ke atas dan ke kiri dari asal persegi panjang tampilan teks. Untuk memosisikan persegi tampilan teks, Anda harus menghitung persegi jendela yang sesuai dan menggunakan persegi panjang tersebut untuk memosisikan tipsalat. TTM_ADJUSTRECT menangani perhitungan ini untuk Anda.

Jika Anda mengatur wParam ke TRUE, TTM_ADJUSTRECT mengambil ukuran dan posisi persegi panjang tampilan teks tipsalat yang diinginkan, dan meneruskan kembali ukuran dan posisi jendela tipsalat yang diperlukan untuk menampilkan teks dalam posisi yang ditentukan. Jika Anda mengatur wParam ke FALSE, Anda dapat menentukan persegi panjang jendela tipsalat dan TTM_ADJUSTRECT akan mengembalikan ukuran dan posisi persegi panjang teksnya.

Fragmen kode berikut mengilustrasikan penggunaan pesan TTM_ADJUSTRECT untuk memosisikan kontrol tipsalat untuk menampilkan teks lengkap string kontrol sebagai pengganti string yang terpotong. Fungsi GetMyItemRect yang ditentukan aplikasi mengembalikan persegi teks yang akan diperlukan untuk menampilkan teks tipsalat langsung di atas string yang terpotong. Detail tentang bagaimana fungsi ini diimplementasikan akan bergantung pada kontrol tertentu. TTM_ADJUSTRECT digunakan untuk mengirim persegi teks ini ke kontrol tipsalat. Ini mengembalikan persegi panjang jendela berukuran tepat dan diposisikan yang kemudian digunakan untuk memosisikan jendela tipsalat.

case TTN_SHOW:

if (MyStringIsTruncated) {
    RECT rc;
    
    GetMyItemRect(&rc);
    SendMessage(hwndToolTip, TTM_ADJUSTRECT, TRUE, (LPARAM)&rc);
    SetWindowPos(hwndToolTip,
                 NULL,
                 rc.left, rc.top,
                 0, 0,
                 SWP_NOSIZE|SWP_NOZORDER|SWP_NOACTIVATE);
} 

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung
Windows Vista [hanya aplikasi desktop]
Server minimum yang didukung
Windows Server 2003 [hanya aplikasi desktop]
Header
Commctrl.h