| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
共有 1885 人关注过本帖, 1 人收藏
标题:RichTextbox控件如何根据自身宽、高,以及用户设定的字体、字号和行距,计算 ...
只看楼主 加入收藏
cssnet
Rank: 5Rank: 5
等 级:职业侠客
威 望:5
帖 子:505
专家分:376
注 册:2013-10-4
收藏
得分:0 
以下是引用吹水佬在2025-9-5 07:36:15的发言:
LockScreen 是 Lock vfp窗口,对 richedit 可能无效。
试试:
SendMessage(hRichEdit, WM_SETREDRAW, 0, 0)    && Lock
SendMessage(hRichEdit, WM_SETREDRAW, 1, 0)    && UnLock


大佬啊,这两行代码,表面上好用,实战可能会有(大)麻烦!
今天晕头晕脑地调试了整整一天,Richtextbox表现一直很不正常,随机性地抛出异常。
经常性地表现为:
在 Lock/UnLock 代码之后,Richtextbox可能无法以代码激活,呈现灰色,需手动点击一次才能够唤醒。
一开始一直以为是某个深藏不露的逻辑错误,拼命地Debug,拼命地查错,一直无办法解决……直至晚上10点,一拍脑门,这才想起来!——注释掉了这一组 Lock/UnLock 后,整个世界一下子豁然清朗了!
原来是它们搞的鬼哇!
吐血!
慎用!慎用!慎用!
——说三遍。
昨晚 22:37
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:451
帖 子:10757
专家分:43344
注 册:2014-5-20
收藏
得分:0 
回复 111楼 cssnet
WM_SETREDRAW消息实质是从窗口中删除或添加 WS_VISIBLE 样式。
MS在WM_SETREDRAW消息说明中有这样一段:
“最后,应用程序可以调用 RedrawWindow(hWnd, NULL, NULL, RDW_ERASE |RDW_FRAME |RDW_INVALIDATE |RDW_ALLCHILDREN) 会重新绘制”
看看有无作用

昨晚 23:24
快速回复:RichTextbox控件如何根据自身宽、高,以及用户设定的字体、字号和行距 ...
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.102372 second(s), 8 queries.
Copyright©2004-2025, BC-CN.NET, All Rights Reserved