在CRichEditView中如何响应获取当前字体格式的消息

reval 2003-08-30 11:38:41
小生不才,参照M$提供的WordPad源代码例子,自制了一个简单字处理程序,基本功能已实现,只是有一点小问题:
在WordPad或Word中,当我们用鼠标点击或选择某一行字时,还有就是用键盘键移动到某一行字时,系统会自动获取当前光标下字体的格式,如字体名称、字体大小等,并更新至工具栏中的相应的字体格式Combo Box框中,请问如何实现? 应处理什么消息?
谢谢!
...全文
56 20 打赏 收藏 转发到动态 举报
写回复
用AI写文章
20 条回复
切换为时间正序
请发表友善的回复…
发表回复
reval 2003-09-15
  • 打赏
  • 举报
回复
各位:
不好意思!这段时间忙别的事情去了,现在再回头看WordPad的源码,用 bcpl(林平之) 的方法:ON_UPDATE_COMMAND_UI机制来解决问题了。当然 fengqinggao(风清高) 的方法也很好,只是我比较懒一点。;-)
谢谢两位,谢谢其他帮忙解决问题的大侠!

fengqinggao 2003-09-13
  • 打赏
  • 举报
回复
我说的那种方法是可行的,如果不是版权问题,我早就发给你了,沉下心来尝试可能比不断Up收获更多,呵呵
reval 2003-09-13
  • 打赏
  • 举报
回复
up
reval 2003-09-12
  • 打赏
  • 举报
回复
up
jack2004 2003-09-12
  • 打赏
  • 举报
回复
up
reval 2003-09-12
  • 打赏
  • 举报
回复
up
reval 2003-09-12
  • 打赏
  • 举报
回复
thanks
但还是不行
howtotell 2003-09-06
  • 打赏
  • 举报
回复
http://www.vckbase.com/document/viewdoc.asp?id=328
reval 2003-09-06
  • 打赏
  • 举报
回复
可是,WordPad中是怎么处理的啊?
reval 2003-09-04
  • 打赏
  • 举报
回复
谢谢, 正在试验中
fengqinggao 2003-09-03
  • 打赏
  • 举报
回复
这个程序我也做过,做一个刷新(包括工具条上的按钮和列表框等)的函数,然后在每一个可能改变光标位置的消息响应函数中调用,我目前只想到了这种方法,可行,但可能不是最优的。

PS:输入英文可以用OnChar()处理,处理汉字(包括Del、ESC、左右上下键等等)在OnKeyDown()、OnKeyUp()中处理,处理鼠标在OnLButtonDown()、OnLButtonUp()、OnLButtonDblClk()等等中处理
reval 2003-09-02
  • 打赏
  • 举报
回复
up
reval 2003-09-01
  • 打赏
  • 举报
回复
UP
bcpl 2003-08-31
  • 打赏
  • 举报
回复
下面的代码片段简单获取当前字体名称,大小。

CString sFontName;
int nTwipSize;
float fFontSize;
CHARFORMAT &cf = GetCharFormatSelection();
sFontName = cf.szFaceName;
nTwipSize = cf.yHeight;

nTwipSize = (nTwipSize + 5) / 10;
fFontSize = nTwipSize / 2.F;//.F;

CString sResult;
sResult.Format("%s\n%f", sFontName, fFontSize);
AfxMessageBox(sResult);
reval 2003-08-31
  • 打赏
  • 举报
回复
to Purpleendurer(Purplenendurer) :
我的意思是:
在WordPad或Word中,当我们用鼠标点击或选择某一行字时,还有就是用键盘键移动到某一行字时, 这些鼠标与键盘操作用什么消息处理啊(或者说移动上一行、下一行字会触发什么消息)?
紫郢剑侠 2003-08-31
  • 打赏
  • 举报
回复
获取当前字体信息后再发消息给Combo Box 进行相关的设置.
bcpl 2003-08-31
  • 打赏
  • 举报
回复
用ON_UPDATE_COMMAND_UI机制
reval 2003-08-31
  • 打赏
  • 举报
回复
谢谢平之兄:
以上代码的确能够获取当前字体信息,但现在最主要的问题是要处理什么消息才能实时地在工具栏的 Combo Box 中反映出来?你可以在 WordPad 或 Word 中操作一下便可知道我的意思了!
reval 2003-08-31
  • 打赏
  • 举报
回复
up
reval 2003-08-31
  • 打赏
  • 举报
回复
UP

16,466

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧