Windows系统编程实验三GDI编程.doc
文本预览下载声明
西华大学上机实践报告
课程:级::名称: 上机实践日期:11.06 上机实践编号:组:
一、目的
二、内容与三、用环境四void CTextOUTDlg::OnPaint()
{
CPaintDC dc(this);
dc.TextOutA(10,10,你好!!,strlen(你好!!));
CDialog::OnPaint();
练习设置字体
void CTextOUTDlg::OnPaint()
{
CPaintDC dc(this);
CFont font;
font.CreatePointFont(320,隶书);
dc.SelectObject(font);
dc.TextOutA(10,10,游在雨城,strlen(游在雨城));
CDialog::OnPaint();
练习使用选择字体的对话框。
(1)在主对话框中添加一个“选择字体”按钮:
void CTextOUTDlg::OnBnClickedButton1()
{
// TODO: 在此添加控件通知处理程序代码
CFontDialog dlg;
if(dlg.DoModal()==IDOK)
{
dlg.GetCurrentFont(lf);
Invalidate();
::UpdateWindow(m_hWnd);
}
}
(2)将选择的字体取到变量lf中:
LOGFONT lf //在CTextOut中声明
(3)lf在CTextOutDlg:OnInitDialog()中的初始化:
{
memset(lf,0,sizeof(LOGFONT));
strcpy(lf.lfFaceName,宋体);
lf.lfPitchAndFamily=DEFAULT_PITCH;
}
(4)实现,更新:
void CTextOUTDlg::OnPaint()
{
CPaintDC dc(this);
CFont font;
font.CreateFontIndirect(lf);
//font.CreatePointFont(320,隶书);
dc.SelectObject(font);
dc.TextOutA(10,10,游在雨城,strlen(游在雨城));
CDialog::OnPaint();
}
输出:
练习设置文本的前景色和背景色。
void CTextOUTDlg::OnPaint()
{
CPaintDC dc(this);
CFont font;
font.CreateFontIndirect(lf);
font.CreatePointFont(320,隶书);
dc.SelectObject(font);
dc.SetBkColor(RGB(255,0,0));
dc.SetTextColor(RGB(0,0,255));
dc.TextOutA(10,10,游在雨城,strlen(游在雨城));
CDialog::OnPaint();
}
输出:
5、练习使用选择颜色的对话框
CPaintDC dc(this);
CFont font;
font.CreateFontIndirect(lf);
font.CreatePointFont(320,隶书);
dc.SelectObject(font);
dc.SetBkMode (TRANSPARENT);
//dc.SetBkColor(RGB(255,0,0));
//dc.SetTextColor(RGB(0,0,255));
dc.SetTextColor(fontColor);
dc.TextOutA(10,10,游在雨城,strlen(游在雨城))
练习在对话框中绘制像素。
void CSetPixelDlg::OnLButtonDown(UINT nFlags,CPoint point)
{
HDC hdc=::GetDC(m_hWnd);
::SetPixel (hdc, point.x,point.y,RGB(255,0,0));
::ReleaseDC(m_hWnd,
显示全部