Bagikan melalui


Fungsi panggilan balik LPFRHOOKPROC (commdlg.h)

Menerima pesan atau pemberitahuan yang ditujukan untuk prosedur kotak dialog default kotak dialog Temukan atau Ganti . Prosedur hook FRHookProc adalah fungsi panggilan balik yang ditentukan aplikasi atau yang ditentukan pustaka yang digunakan dengan fungsi FindText atau ReplaceText .

Jenis LPFRHOOKPROC mendefinisikan penunjuk ke fungsi panggilan balik ini. FRHookProc adalah tempat penampung untuk nama fungsi yang ditentukan aplikasi.

Sintaks

LPFRHOOKPROC Lpfrhookproc;

UINT_PTR Lpfrhookproc(
  HWND unnamedParam1,
  UINT unnamedParam2,
  WPARAM unnamedParam3,
  LPARAM unnamedParam4
)
{...}

Parameter

unnamedParam1

Handel ke kotak dialog Temukan atau Ganti yang pesannya dimaksudkan.

unnamedParam2

Pengidentifikasi pesan yang diterima.

unnamedParam3

Informasi tambahan tentang pesan. Arti yang tepat tergantung pada nilai parameter unnamedParam2 .

unnamedParam4

Informasi tambahan tentang pesan. Arti yang tepat tergantung pada nilai parameter unnamedParam2 .

Jika parameter unnamedParam2 menunjukkan pesan WM_INITDIALOG , unnamedParam4 adalah penunjuk ke struktur FINDREPLACE yang berisi nilai yang ditentukan saat kotak dialog dibuat.

Mengembalikan nilai

Jika prosedur kait mengembalikan nol, prosedur kotak dialog default memproses pesan.

Jika prosedur kait mengembalikan nilai bukan nol, prosedur kotak dialog default mengabaikan pesan.

Keterangan

Saat Anda menggunakan fungsi FindText atau ReplaceText untuk membuat kotak dialog Temukan atau Ganti , Anda bisa menyediakan prosedur hook FRHookProc untuk memproses pesan atau pemberitahuan yang ditujukan untuk prosedur kotak dialog. Untuk mengaktifkan prosedur kait, gunakan struktur FINDREPLACE yang Anda berikan ke fungsi pembuatan dialog. Tentukan alamat prosedur kait di anggota lpfnHook dan tentukan bendera FR_ENABLEHOOK di anggota Bendera .

Prosedur kotak dialog default memproses pesan WM_INITDIALOG sebelum meneruskannya ke prosedur kait. Untuk semua pesan lainnya, prosedur kait menerima pesan terlebih dahulu. Kemudian, nilai pengembalian prosedur kait menentukan apakah prosedur dialog default memproses pesan atau mengabaikannya.

Jika prosedur kait memproses pesan WM_CTLCOLORDLG , prosedur tersebut harus mengembalikan handel kuas yang valid untuk mengecat latar belakang kotak dialog. Secara umum, jika prosedur kait memproses pesan WM_CTLCOLOR* , itu harus mengembalikan handel kuas yang valid untuk melukis latar belakang kontrol yang ditentukan.

Jangan panggil fungsi EndDialog dari prosedur kait. Sebagai gantinya, prosedur kait dapat memanggil fungsi PostMessage untuk memposting pesan WM_COMMAND dengan nilai IDABORT ke prosedur kotak dialog. Memposting IDABORT menutup kotak dialog dan menyebabkan fungsi kotak dialog mengembalikan FALSE. Jika Anda perlu tahu mengapa prosedur kait menutup kotak dialog, Anda harus menyediakan mekanisme komunikasi Anda sendiri antara prosedur kait dan aplikasi Anda.

Anda dapat mensubkelas kontrol standar dari kotak dialog umum. Namun, prosedur kotak dialog juga dapat mensubkelas kontrol. Karena itu, Anda harus mengontrol subkelas saat prosedur kait memproses pesan WM_INITDIALOG . Ini memastikan bahwa prosedur subkelas Anda menerima pesan khusus kontrol sebelum prosedur subkelas yang diatur oleh prosedur kotak dialog.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows 2000 Professional [hanya aplikasi desktop]
Server minimum yang didukung Windows 2000 Server [hanya aplikasi desktop]
Target Platform Windows
Header commdlg.h (sertakan Windows.h)

Lihat juga

Pustaka Kotak Dialog Umum

Konseptual

EndDialog

FINDREPLACE

FindText

PostMessage

Referensi

ReplaceText

WM_CTLCOLORDLG

WM_INITDIALOG