第4讲-边框窗口、文档与视-文本、字体、图形输出.pptVIP

  • 0
  • 0
  • 约6.67千字
  • 约 71页
  • 2026-01-27 发布于北京
  • 举报

第4讲-边框窗口、文档与视-文本、字体、图形输出.ppt

;;;;;;2、设置文本背景颜色

文本在屏幕上输出要占据一定的区域,这个区域用包含文本的矩形区域来定义。在这个区域内除去文本本身的笔划占据的部分以外的其它空隙部分就是文本的背景。

文本背景颜色是指用来填充文本输出区域内空隙部分的颜色。文本背景模式是指文本背景颜色填充文本背景的方式。

CDC::SetBkColor成员函数用于设置文本的背景颜色,该函数说明如下:

格式:virtualCOLORREFSetBkColor(COLORREFcrColor);

功能:设置当前文本背景颜色。

返回:先前文本的背景颜色值。

参数:

crColor-指定当前文本背景颜色值

;CDC::SetBkMode成员函数用于设置文本背景模式,该函数说明如下:

格式:intSetBkMode(intnBkMode);

功能:设置当前背景模式。

返回:先前的背景模式。

参数:

nBkMode-指定当前的背景模式

它有两个取值:

OPAQUE-不透明(缺省时为该值)

显示时,背景用当前背景色

TRANSPARENT-透明

显示时,不改变背景色(调用SetBkColor函数无效)

;SetBkColor使用举例:

用[MFCAppWizard(exe)]工程创建一SDIMFCWindows应用程序。要求-当在客户区单击MOUSE时,用黄色在(100,100)处显示“马到成功!”字符串,字符串背景用红色显示。

程序片断如下:

/////////

CDC*pDC=GetDC();

CStringstr=马到成功!;

intnBkMode;

COLORREFrColor,oColor;

rColor=RGB(255,255,0);//黄色

oColor=pDC-SetTextColor(rColor);

nBkMode=pDC-SetBkMode(OPAQUE);//保存原来的背景模式,并且当前背景设置为不透明;pDC-SetBkColor(RGB(255,0,0));//设置当前背景颜色为红色

pDC-TextOut(100,100,str);//显示文本

pDC-SetTextColor(oColor);//恢复原来的文本颜色

pDC-SetBkMode(nBkMode);//恢复原来的背景模式

ReleaseDC(pDC);//释放设备环境

;4.2.1字体的基本知识

一、关于字体的术语

1、字模(typeface):指基本的字符设计,它由笔划宽度(strokewidth)及衬线(serif)决定。

注:衬线([印]serif)指主笔划结尾时的细线,如字母“H”的上下四条短而细的横线。有些字体不带衬线(sansserif)。

sans-prep.无。

2、字体(font):具有相同字模和尺寸的完整字符集。

字体尺寸用来指定字符所占区域的大小,可以用mm、inch或“点”来衡量。点是印刷中采用的最小度量单位(1英寸=72dots=25.4mm)。

;;;;;;;;;;3、CFont::CreateFontIndirect-创建逻辑字体(法2)

使用时首先定义LOGFONT结构的有关成员创建所需的字体,然后调用CFont::CreateFontIndirect产生该字体。

CFont::CreateFontIndirect函数说明如下:

格式:BOOLCreateFontIndirect(constLOGFONT*lpLogFont);

功能:以lpLogFont指向LOGFONT结构中给出的字体属性初始化一个CFont对象。

返回:调用成功,返回非0值。

参数:

lpLogFont-指向LOGFONT结构的指针。

;;;;;;;;for(inti=0;i6;i++)

{

pDC-SelectStockObject(nFonts[i]);

pDC-TextOut(200,40*(i+2),str);

};4.3.1基本图形显示

用CDC绘图函数绘制基本图形与前面介绍的用CDC文本函数输出文本的步骤相同(见本章4.2.1节三步曲)。另外CDC还派生了CPaintDC、CClientDC、CWindowDC等类。

一、常用绘图函数

△CDC::SetPixel

格式:COLORREFSetPixel(intx,inty,COLORREFcrColor);

COLORREFSetPixel(POINTpoint,COLORREFcrColor);

功能:设置指定坐标像素为最接近crColor所指定的颜色。

返回:若调用成功,返回指定坐标像素的实际RGB值。

例:在OnDraw函数中,添加如下语句

pDC-Se

文档评论(0)

1亿VIP精品文档

相关文档