设为首页 加入收藏

TOP

输出文字(四十四)
2010-12-30 21:10:02 】 浏览:37214
Tags:输出 文字
呼叫SetScrollInfo设置其位置。程式然後呼叫GetScrollInfo。如果该位置超出了SetScrollInfo呼叫的范围,则由Windows来纠正该位置并且在GetScrollInfo呼叫中传回正确的值。

SYSMETS3使用ScrollWindow函式在视窗的显示区域中卷动资讯而不是重画它。虽然该函式很复杂(在新版本的Windows中已被更复杂的ScrollWindowEx所替代),SYSMETS3仍以相当简单的方式使用它。函式的第二个参数给出了水平卷动显示区域的数值,第三个参数是垂直卷动显示区域的数值,单位都是图素。

ScrollWindow的最後两个参数设定为NULL,这指出了要卷动整个显示区域。Windows自动把显示区域中未被卷动操作覆盖的矩形设为无效。这会产生WM_PAINT讯息。再也不需要InvalidateRect了。注意ScrollWindow不是GDI函式,因为它不需装置内容代号。它是少数几个非GDI的Windows函式之一,它可以改变视窗的显示区域外观。很特殊但不方便,它是随卷动列函式一起记载在文件中。

WM_HSCROLL处理拦截SB_THUMBPOSITION通知码并忽略SB_THUMBTRACK。因而,如果使用者在水平卷动列上拖动卷动方块,在使用者释放滑鼠按钮之前,程式不会水平卷动视窗的内容。

WM_VSCROLL的方法与之不同:程式拦截SB_THUMBTRACK讯息并忽略SB_THUMBPOSITION。因而,程式随使用者在垂直卷动列上拖动卷动方块而垂直地滚动内容。这种想法很好,但应注意:一旦使用者发现程式会立即回应拖动的卷动方块,他们就会不断地来回拖动卷动方块。幸运的是现在的PC快得可以胜任这种严酷的测试。但是在较慢的机器上,可以考虑为GetSystemMetrics使用SB_SLOWMACHINE参数来替代这种处理。

加快WM_PAINT处理的一个方法由SYSMETS3展示:WM_PAINT处理程式确定无效区域中的文字行并仅仅重画这些行。当然,程式码复杂一些,但速度很快。

不用滑鼠怎么办
 

在Windows的早期,有大量的使用者不喜欢使用滑鼠,而且,Windows自身也不要求必须有滑鼠。虽然,没有滑鼠的PC现在走上了单色显示器和点阵印表机的没落之路,但我仍然建议您编写可以使用键盘来产生与滑鼠操作相同效果的程

首页 上一页 41 42 43 44 下一页 尾页 44/44/44
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇图形基础 下一篇视窗和讯息

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目