博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
文本编程
阅读量:6102 次
发布时间:2019-06-20

本文共 1413 字,大约阅读时间需要 4 分钟。

hot3.png

响应键盘输入的信息,相当于简单记事本:建立工程h-1向CH-1view类添加先添加CPoint m_ptOriginCString m_strInput变量;添加函数ON_Create()代码如下:int CH_1View::OnCreate(LPCREATESTRUCT lpCreateStruct){ if (CView::OnCreate(lpCreateStruct) == -1)  return -1;  CClientDC dc(this); CFont fn; fn.CreatePointFont(200,"华文行楷"); dc.SelectObject(&fn); TEXTMETRIC tm; dc.GetTextMetrics(&tm); CreateSolidCaret(tm.tmAveCharWidth /8,tm.tmHeight); ShowCaret(); // TODO: Add your specialized creation code here  return 0;}添加OnChar()代码如下:void CH_1View::OnChar(UINT nChar, UINT nRepCnt, UINT nFlags){ // TODO: Add your message handler code here and/or call default CClientDC dc(this);  CFont fn; fn.CreatePointFont(200,"华文行楷"); CFont *pold=dc.SelectObject(&fn); TEXTMETRIC tm; dc.GetTextMetrics(&tm); if(0x0d==nChar) {  m_ptOrigin.x=0;  m_ptOrigin.y+=tm.tmHeight;   m_strInput.Empty(); } else if(0x08==nChar) { COLORREF oldClr;  oldClr=dc.SetTextColor(dc.GetBkColor());//将字体颜色设为背景色   dc.TextOut(m_ptOrigin.x,m_ptOrigin.y,m_strInput);//输出   m_strInput=m_strInput.Left(m_strInput.GetLength()-1);//删除最后一个字符   dc.SetTextColor(oldClr);        } else {  m_strInput+=nChar;  }   CSize sz=dc.GetTextExtent(m_strInput);  CPoint pt;  pt.x=m_ptOrigin.x+sz.cx;  pt.y=m_ptOrigin.y;  SetCaretPos(pt); dc.TextOut(m_ptOrigin.x,m_ptOrigin.y,m_strInput);  dc.SelectObject(pold); CView::OnChar(nChar, nRepCnt, nFlags);}其他功能还好,就是退格符不如人意:出现了多个光标,待解决!

转载于:https://my.oschina.net/annieduoduo/blog/71440

你可能感兴趣的文章
存储过程例子
查看>>
Windows server 共享文件夹权限设置
查看>>
Java并发编程:Lock(转)
查看>>
PCI Express(五) - Xilinx wizard
查看>>
马凯军201771010116《面向对象程序设计(java)》第三周学习总结
查看>>
POJ2065 SETI
查看>>
SQL Server无法打开用户默认数据库,登录失败,用户‘sa’登录失败,错误:4064的解决方法...
查看>>
【编程技巧】applicationContext.xml 里面可配置bean和数据库地址
查看>>
phplib系统开发经验总结
查看>>
D Thanking-Bear magic
查看>>
一天一个设计模式(13)——命令模式
查看>>
比较全的表单提交页面对电话邮箱判断
查看>>
Ubuntu SVN客户端安装
查看>>
PAT 1078 Hashing[一般][二次探查法]
查看>>
Vue与Element走过的坑。。。。带上Axios
查看>>
Steps to developing Metro style apps 第一章-Creat a UI(2)(2)
查看>>
Struts2_day01--导入源文件_Struts2的执行过程_查看源代码
查看>>
【转】高效使用 SSH 的 16 个技巧
查看>>
RedHat 6.2 中的 samba 服务端配置 方法
查看>>
leetcode70
查看>>