手机版

C++课程设计报告(简易文本编辑器)(6)

发布时间:2021-06-06   来源:未知    
字号:

C++编译的文本编辑器

行绘制,文本框的大小改变等会导致文本编辑区的重绘,所以在改变文本框时必须调用函数对文本框中的内容进行保存,相关代码如下所示: BOOL CBmpEdit::OnEraseBkgnd(CDC* pDC) { }

void CBmpEdit::OnChange() { }

HBRUSH CBmpEdit::CtlColor(CDC* pDC, UINT nCtlColor) { }

void CBmpEdit::OnVScroll(UINT nSBCode, UINT nPos, CScrollBar * pScrollBar) { }

void CBmpEdit::OnKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags) {

CDC memDC;

memDC.CreateCompatibleDC(pDC);//创建内存设备上下文 memDC.SelectObject(&m_Bitmap);//将位图选入设备上下文 BITMAP m_Bmp; //声明位图控件

m_Bitmap.GetBitmap(&m_Bmp); //获得位图信息 int x = m_Bmp.bmWidth; //获取图片宽度 int y = m_Bmp.bmHeight; //获取图片高度 CRect rect; //声明矩形区域对象

GetClientRect(rect); //获取编辑区大小矩形框

pDC->StretchBlt(0,0,rect.Width(),rect.Height(),&memDC,0,0,x,y,SRCCOPY); memDC.DeleteDC();//释放内存设备上下文

return TRUE; //return CEdit::OnEraseBkgnd(pDC);

//伸展铺上图片

Invalidate(); //刷新用户界面

pDC->SetBkMode(TRANSPARENT); //设置文字背景透明 return NULL;

CEdit::OnVScroll(nSBCode, nPos, pScrollBar); //判断滚动条是否滑动 Invalidate(); //刷新用户界面

int n1,n2;

C++课程设计报告(简易文本编辑器)(6).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
×
二维码
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)