📄 untitled-45.txt
字号:
第2章在窗口中绘图75
Scrollwindow接收四个参数。两个是必需的,两个是可选的。函数原型如下:
void Scrollwindow(nit xAin。nut, nit yAmount,
LPCRECT lpRect= NULL, LPCRECT lpClipRect= MILL)
x**。nut和…—。nut是带符号的整型数,确定垂直或水平方向上要滚动的像素数目。负
值表示向左和向上滚动,正值表示向右和向下滚动。lpRect指向一个CRect对象或RECT结
构,指定客户区中待滚动的部分;而IPCliPRect指向一个CRect对象或RECT结构,指定裁剪
矩形。滚动整个客户区内容时,应将lpRect和lpClipRect指定为NULL。语句
Scrollwindow(O, 10);
将窗口客户区所有内容向下滚动10个像素,并立即重画前十行。
应用程序无论输出文本、图形或同时输出文本和图形,您都可以调用Scrollwindow。在
Windows中,一切都是图形的——包括文本。
2.3.6 Accel应用程序
现在让我们运用所学的知识编一个实现滚动的应用程序吧。Accel画出一个类似于Micrnsoft
EXcel的窗口(参见图2-13)。这个窗口描述的电子表格有26列宽、op行高。表格太大,一次无法
显示全部内容。然而滚动条可帮助用户测览电子表格的全部内容。除了提供了动手实践前述准
则的机会外,Accel还从另一个角度证明了应用程序可以按比例缩放输出。Accel没有使用非
MMTEX映射模式,而是调用 CDC::GetDeviceCaPs向显示设备查询水平和垂直方向上每英寸内
显示的像素数。然后,根据像素数画出每个单元格,使它成为l英寸宽X/英寸高。
图 2-13 Accel窗口
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -