如何在CEdit控件中保留插入符号位置?
时间:2020-03-06 14:21:21 来源:igfitidea点击:
我正在MFC中编程一个应用程序(不要问),并且我有一个CEdit框,里面装有一个数字。编辑该数字后,我想对更改进行操作,然后如果用户恰好在"。"之前,请替换插入符号,然后再对更改进行操作。在" 35.40"中,如果他们将其更改为" 345.40",我希望它仍放置在圆点之前。我目前正在捕获CHANGE消息,但是可以将其切换为其他消息(UPDATE?)。我怎样才能做到这一点?
解决方案
进行更改之前,请使用GetSel()函数存储光标的位置,然后使用SelSel()将其重新设置。我们可以使用这些功能来获取/设置插入标记的位置,而不仅仅是获取/设置用户所做的选择。
我们能解释一下为什么要更改CEdit框的行为的原因吗?
作为用户,每次输入一些字符时,插入符号都会发生变化。还是要以编程方式更改该值,这是我们要防止的?