下面请跟着图老师小编一起来了解下高手解答:关于RICHEDIT的两个问题,精心挑选的内容希望大家喜欢,不要忘记点个赞哦!
【 tulaoshi.com - 编程语言 】
问题1:RichEditCtrl在用DDX进行数据交换的时候会发生数据丢失问题?为什么! 当我们在拖了一个控件到程序里后,通常的做发是Ctrl+W,用类向导给控件关联一个变量,然后依靠DDX/DDV进行数据交换,假如我们用同样的方法来给RICHEDIT关联一个CString类型的变量就会存在一个问题,就是假如我们的数据大于了64K,数据就会丢失。 通过查MSDN发现,WM_GETTEXT消息并没有设计在RICHEDIT的数据大于64K的时候怎样处理。而类向导生成的代码是用DDX_Text来交换控件和CString变量的数据。恰好,DDX_Text函数是调用GetWindowText函数,而这个函数又会发出WM_GETTEXT消息到控件来返回控件里的数据。WM_GETTEXT消息不能接受超过64K的数据,因此导致了RICHEDIT在数据交换的时候发生了丢失。 为了解决这个问题,我们要用到DDX_RichText函数。添加下面两个函数到工程以下是引用片段:来源:http://www.tulaoshi.com/n/20160219/1624859.html
看过《高手解答:关于RICHEDIT的两个问题》的人还看了以下文章 更多>>