设为首页 加入收藏

TOP

子视窗控制项(六十)
2010-12-30 21:12:42 】 浏览:46681
Tags:视窗 控制
ctObject (hdc, GetStockObject (SYSTEM_FIXED_FONT)) ;
SetTextColor (hdc, GetSysColor (COLOR_BTNTEXT)) ;
SetBkColor (hdc, GetSysColor (COLOR_BTNFACE)) ;

// Assume the file is ASCII

DrawTextA (hdc, buffer, i, &rect, DTFLAGS) ;

EndPaint (hwnd, &ps) ;
return 0 ;

case WM_DESTROY :
PostQuitMessage (0) ;
return 0 ;
}
return DefWindowProc (hwnd, message, wParam, lParam) ;
}

LRESULT CALLBACK ListProc (HWND hwnd, UINT message,
WPARAM wParam, LPARAM lParam)
{
if (message == WM_KEYDOWN && wParam == VK_RETURN)
SendMessage (GetParent (hwnd), WM_COMMAND,
MAKELONG (1, LBN_DBLCLK), (LPARAM) hwnd) ;
return CallWindowProc (OldList, hwnd, message, wParam, lParam) ;
}

在ENVIRON中,当我们选择一个环境变数时-无论是使用滑鼠还是键盘-程式都将显示一个环境字串。但是,如果我们在HEAD中使用这种选择显示方法,那么程式回应会很慢,这是因为在清单方块中移动选择时,程式仍然要不断地打开和关闭档案。然而,HEAD要求档案或者子目录被双击,从而引起一些问题,这是因为清单方块控制项没有滑鼠双击的自动键盘介面。前面讲过,如果可能,应该尽量提供键盘介面。

解决的方法是什么呢?当然是视窗子类别化。HEAD中的清单方块子类则函式叫做ListProc,它寻找wParam参数等於VK_RETURN的WM_KEYDOWN讯息,并给其父视窗发送一条带有LBN_DBLCLK通知码的WM_COMMAND讯息。在WndProc中,对WM_COMMAND的处理使用了Windows函式的CreateFile来检查清单方块中的选择。如果CreateFile传回一个错误资讯,则表

首页 上一页 57 58 59 60 61 下一页 尾页 60/61/61
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇功能表及其他资源 下一篇计时器

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目