一、按键消息
键按下键释放非系统键WM_KEYDOWNWM_KEYUP系统键WM_SYSKEYDOWNWM_SYSKEYUP
下面说明在SYSMETS程序中使用SendMessage处理WM_KEYDOWN代码的方法:
caseWM_KEYDOWN:
switch (wParam)
{
case VK_HOME:
SendMessage (hwnd, WM_VSCROLL, SB_TOP, 0) ;
break ;
case VK_END:
SendMessage (hwnd, WM_VSCROLL, SB_BOTTOM, 0) ;
break ;
case VK_PRIOR:
SendMessage (hwnd, WM_VSCROLL, SB_PAGEUP, 0) ;
break ;
———————————————————————————
二、插入符号
1、为便于以分行的方式显示此信息,KEYVIEW1使用了等宽字体。与前一章所讨论的一样,
这需要呼叫GetStockObject和SelectObject:
SelectObject (
hdc,
GetStockObject (SYSTEM_FIXED_FONT)
);
2、通常,Windows以一种「不透明」的方式显示文字,也就是说显示字符时Windows
将擦除字符背景区。这将导致第二个字符串(szUnd)擦除掉前一个(szTop)。要防止这
一现象的发生,可将设备内容切换到「透明」模式:
SetBkMode (hdc, TRANSPARENT) ;
3、
GetStockObject标识符字体名称小字体文件 大字体文件SYSTEM_FONTSystemVGASYS.FON8514SYS.FONSYSTEM_FIXED_F
ONT FixedSysVGAFIX.FON8514FIX.FONOEM_FIXED_FON
T Terminal VGAOEM.FON8514OEM.FON
———————————————————————————
三、插入符号函数
1、主要有五个插入符号函数:
CreateCaret 建立与窗口有关的插入符号
SetCaretPos 在窗口中设定插入符号的位置
ShowCaret 显示插入符号
HideCaret 隐藏插入符号
DestroyCaret 撤消插入符号
2、通过处理WM_SETFOCUS和WM_KILLFOCUS消息,程序就可以确定它是否有输入焦点。
———————————————————————————
四、TYPER程序
主要有五个插入符号函数:
CreateCaret 建立与窗口有关的插入符号
SetCaretPos 在窗口中设定插入符号的位置
ShowCaret 显示插入符号
HideCaret 隐藏插入符号
DestroyCaret 撤消插入符号