设为首页 加入收藏

TOP

WindowsAPI-GDI入门基础知识详解
2014-11-23 21:32:12 】 浏览:372
Tags:WindowsAPI GDI 入门 基础知识 详解

  现在我们对GDI的基础概念有了一定的了解,下面我们将对GDI一些常用的函数进行学习。


  TextOut函数


  TextOut函数的作用是把指定的字符串输出在我们指定的屏幕位置上。


  函数原型:


  BOOL TextOut(XML:namespace prefix = o ns = "urn:schemas-microsoft-com:Office:office" />


  HDC PerlINK '''">hdc, // 设备描述表句柄


  int nXStart, // 输出的x轴水平位置


  int nYStart, // 输出的y轴垂直位置


  LPCTSTR lpString, // 指向要输出字符串的长指针


  int cbString // 字符串长度


  );


  第一参数是设备描述表句柄,它既可以是通过BeginPaint函数获得的,也可以是通过GetDC函数获得的,需要提一下的是,设备描述表中的属性控制了显示的字符串的一些细节特征,比如字体、字体颜色、文字背景等,但要注意的是保存在设备描述表属性中的文字背景颜色和WNDCLASS结构中的屏幕背景是有区别的,文字背景指的是紧靠字符周围的矩形空间,又叫做字符框。而窗口背景则是一个画刷,Windows用它来擦除显示区域,它不是设备描述表结构中的一部分。


  第二和第三个参数定义了显示区域内字符串的开始位置,x是水平位置,y是垂直位置,字符串第一个字符位于坐标点(x,y),在设备描述表属性中,原点(x,y)均为为0,是显示区域的左上角,对于坐标来说,坐标的映射方式的不同决定了单位的不同,在通常情况下传递给函数的坐标被称为逻辑坐标,Windows有许多坐标映射方式,它们是用来控制GDI函数指定的逻辑坐标转换为显示器的实际像素坐标的方式。映射方式在设备描述表的属性中定义,默认的映射方式是MM_TEXT,我们可以在WinGdi.h头文件中找到。在MM_TEXT映射模式下,逻辑单位于实际单位都相同,都是像素,对于坐标来说,x的值从左向右递增,y的值则从上向下递增(见下图),MM_TEXT坐标系与Windows在PAINTSTURCT结构中定义的无效矩形所使用的坐标系相同。


  第四个参数是指向要输出字符串的长指针。


  第五个参数是要输出的字符串的实际长度。


  在Windows下输出文字并不如我们所想象的那么容易,在前面我们已经知道输出文字和坐标有关,我们为了精确的输出文字,就必须对系统的字体和字符大小有进一步的认识。


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇线索二叉树算法 下一篇C++箴言:避免构造或析构函数中调..

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目