在Dialog中设置焦点失败?
WM_INITDIALOG消息
在顯示對(duì)話框之前立即發(fā)送到對(duì)話框過(guò)程。對(duì)話框過(guò)程通常使用此消息來(lái)初始化控件并執(zhí)行任何其他影響對(duì)話框外觀的初始化任務(wù)。
#define WM_INITDIALOG 0x0110參量
wParam
控件的句柄以接收默認(rèn)的鍵盤焦點(diǎn)。僅當(dāng)對(duì)話框過(guò)程返回TRUE時(shí),系統(tǒng)才會(huì)分配默認(rèn)鍵盤焦點(diǎn)。
帕拉姆
其他初始化數(shù)據(jù)。在調(diào)用用于創(chuàng)建對(duì)話框的CreateDialogIndirectParam,CreateDialogParam,DialogBoxIndirectParam或DialogBoxParam函數(shù)時(shí),此數(shù)據(jù)將作為lParam參數(shù)傳遞到系統(tǒng)。對(duì)于屬性表,此參數(shù)是用于創(chuàng)建頁(yè)面的PROPSHEETPAGE結(jié)構(gòu)的指針。如果使用任何其他對(duì)話框創(chuàng)建功能,則此參數(shù)為零。
返回值
對(duì)話框過(guò)程應(yīng)返回TRUE,以指示系統(tǒng)將鍵盤焦點(diǎn)設(shè)置為wParam指定的控件。否則,應(yīng)返回FALSE以防止系統(tǒng)設(shè)置默認(rèn)鍵盤焦點(diǎn)。
對(duì)話框過(guò)程應(yīng)直接返回該值。由SetWindowLong函數(shù)設(shè)置的DWL_MSGRESULT值將被忽略。
備注
接收默認(rèn)鍵盤焦點(diǎn)的控件始終是對(duì)話框中第一個(gè)可見,未被禁用且具有WS_TABSTOP樣式的控件。當(dāng)對(duì)話框過(guò)程返回TRUE時(shí),系統(tǒng)將檢查控件以確保該過(guò)程尚未禁用它。如果已禁用,則系統(tǒng)會(huì)將鍵盤焦點(diǎn)設(shè)置為可見的下一個(gè)控件(未禁用),并具有WS_TABSTOP。
只有將鍵盤焦點(diǎn)設(shè)置為對(duì)話框的控件之一,應(yīng)用程序才能返回FALSE。
總結(jié)
以上是生活随笔為你收集整理的在Dialog中设置焦点失败?的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 数据、数据库、数据库管理系统,数据库系统
- 下一篇: 数据仓库与数据挖掘实践期末复习总结