首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

用Textout输出文本之后,如何做选定文本啊

2013-02-27 
用Textout输出文本之后,怎么做选定文本啊?用Textout输出文本之后,怎么做选定文本啊?就是我要做到像文本框

用Textout输出文本之后,怎么做选定文本啊?
用Textout输出文本之后,怎么做选定文本啊?就是我要做到像文本框一样能够选定文本?我知道有SetCaretPos等函数来放置一个插入符,但是怎么计算插入符的位置?怎么才能像一般的文本框那样能够选择文本?
[解决办法]
各种消息咯
你可以使用消息自己实现一个文本框
textout输出的矩形你需要知道
鼠标点击的范围你需要计算是否处于输出矩形内
如果处于显示插入符
如果不处于。。。
鼠标按下(不放开)并且移动,你需要计算是否处于编辑框内,并且计算是否出了文本框。
等等啦
[解决办法]

引用:
引用:CEdit有源代码的,楼主自己看看?在哪呢???说一下吧。在C++的示例里?还是在什么地方。用的是C++2010。如果是旧版本的,C++6的示例里面有吗?

File: "C:\Program Files\Microsoft Visual Studio\VC98\MFC\SRC\WINCTRL1.CPP"
   226: /////////////////////////////////////////////////////////////////////////////
   227: // CEdit
   228: 
   229: BOOL CEdit::Create(DWORD dwStyle, const RECT& rect, CWnd* pParentWnd, UINT nID)
   230: {
   231:     CWnd* pWnd = this;
   232:     return pWnd->Create(_T("EDIT"), NULL, dwStyle, rect, pParentWnd, nID);
   233: }
   234: 
   235: CEdit::~CEdit()
   236: {
   237:     DestroyWindow();
   238: }

[解决办法]
个人觉得你可以用子类化来实现:需要修改的,比较简易的可以自己在子类后的消息中处理,光标功能的实现是比较复杂的,需要计算字体的宽度,高度,很复杂的计算,由于windows本身有对光标的处理,所以你可以返回给windows系统来处理光标。
[解决办法]
引用:
引用:……
我想要的不仅是创造这个效果,而是要知道他实现的原理和过程啦~~,CEdit类各个函数的定义就看着眼晕啊~~~

代码有时不能用看来弄懂,要用单步或设断点调试来弄懂。

热点排行