设为首页 加入收藏

TOP

计算机二级辅导:VC编写的打字练习
2014-11-23 21:26:53 】 浏览:7540
Tags:计算机 二级 辅导 :VC 编写 打字 练习

  一开始走了很多弯路,后来发现直接使用RichEdit2.0就OK.使用原因:由于RichEdit2.0A自动为宽字符(WideChar),所以它可以解决中文乱码以及一些汉字问题


  一、原理:


  添加两个重叠的RichEdit,然后设置行高为字体高度的一倍。两个错开,一个用于文本显示,一个用于用户输入。关闭窗口时判分。


  二、在对话框里添加两个重叠的RICHEDIT2.0。


  方法一:(msdn上的做法,适用于用VC.NET及以后版本创建的工程)


  To update rich edit controls in existing Visual C++ applications to version 2.0, open the .RC file as text, change the class name of each rich edit control from "RICHEDIT" to "RichEdit20a". Then replace the call to AfxInitRichEdit with AfxInitRichEdit2.


  方法二:以对话框为例:


  (1)增加一全局变量HMODULE hMod;


  (2)  在CxxxApp::InitInstance()中添加一句hMod = LoadLibrary(_T("riched20.dll"));


  在CxxxApp::ExitInstance()中添加一句FreeLibrary(hMod);


  (3)   在对话框上放一个richedit,文本方式打开.rc文件修改该richedit控件的类名"RICHEDIT" to "RichEdit20a".


  (4)在对话框头文件添加CRichEditCtrl m_richedit;


  在OnInitDialog中添加 m_richedit.SubclassDlgItem(IDC_RICHEDIT1, this);


  本文采用第二种方法。


  三、初始化RichEdit(两个richedit都差不多,用户输入那个放在上面,所以要设置其为背景透明)


  包括三个过程


  1.读入文件


  2.设置行高


  3.设置字体


  4.设置背景透明


  /*读入文件*/


  DWORD CALLBACK CTest9Dlg::MyStreamInCallback(DWORD dwCookie, LPBYTE pbBuff, LONG cb, LONG *pcb)


  {


  CFile* pFile = (CFile*) dwCookie;


  *pcb = pFile->Read(pbBuff, cb);


  return 0;


  }


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇查看数字在计算机内部的二进制表示 下一篇进程的定义和CreateProcess函数的..

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目