函数:
SetPixel();设置一个点
MoveTo() LineTo() 用于绘制直线
RecTangle() 用于绘制矩形
Ellipse() 用于绘制椭圆
DoModal() 用于创建模态对话框
CColorDialog CFontDialog 颜色对话框和字体对话框
CreateFontIndirect()根据选择的字体类型来初始化字体对象
HBRUSH OnCtrColor(CDC* pDC , CWnd *pWnd , UINT nCtrColor)两个指针分别指向要改变颜色的控件的文本,控件本身,最后一个参数表示控件的类型。
GetDlgCtrID() 获取所需控件的ID
SetTextColor() 设置控件上的文本颜色
BitBlt()将兼容DC的位图复制到当前DC中,
StretchBlt()将兼容DC的位图复制到当前DC中,但是可以实现位图的拉伸或压缩,以达到适合目的矩形
知识点:
绘制其他颜色的线条,首先需要构建一个画笔对象,同时给画笔加上颜色,线条粗细等。
设置画刷为透明画刷,可以使画出来的图形显示出内部的内容。
视类对象的生命周期从应用程序产生时开始,至应用程序结束时终止。故其对象成员保存的值也是一直存在。
颜色对话框的CHOOSECOLOR类的rgbResult成员变量里面保存选择的颜色结果,可以通过调用这个成员获得所需的默认颜色。
要改变颜色对话框的默认颜色,需通过改变对话框的CC_RGBINIT标记,该标记在对话框构建是通过其构造函数的第二个参数来设置,或者直接通过CHOOSECOLOR结构的m_cc成员变量的nFlags成员设置,该成员不能直接赋值,必须通过与或的组合来赋值。
字体前带上@符号代表字体方向颠倒。
CGdiObject类对象与WindowsGDI资源对象通过m_hObject成员来进行关联,因此可通过判断m_hObject的值来判断两者是否已经关联上,如果关联上,可以通过DeleteObject()函数删除GDI资源对象来中断两者之间的关联。释放CGdiObject类对象。
对于对话框,对话框上的每一个控件要进行颜色绘制的时候都必须要向其发送WM_CTRCOLOR消息,好比小区里的业主房子外墙要重新粉刷(如果可以的话),都必须要向物业公司(或者开发商)发送申请。
自绘制空间应该具有BS_OWNERDRAW风格 ,通过控件属性对话框的Owner draw选项来设置
位图的显示,创建位图-〉创建兼容DC-〉将位图选入兼容DC-〉将兼容DC的位图贴到当前DC中
窗口绘制时先擦出窗口背景,后对窗口进行重新绘制,擦除背景时程序会发送一个WM_ERASEBKGND,在视类窗口中添加此消息的响应函数来完成窗口的重绘。同时也可以在OnDraw()函数中完成窗口的重绘。