当前位置:首页 > 技术心得 > 正文内容

ComboBox自绘异常与DrawItem不响应等问题

xjtudll5年前 (2022-04-20)技术心得11200

https://blog.csdn.net/wghhdzwzqbx02/article/details/7277937

   对于ComboBox而言,虽然与Button相比,自绘都在DrawItem函数中进行,但是实际自绘过程远比Button复杂。原因之一就在于它本身的复杂度:它由三个控件组成(CEdit,CListBox,CButton)。而且在自毁过程中极易发生各种问题,现在总结如下:

  一、CComboBox的AddString函数异常

  原因:可能属性未设置正确。

  需要设置Owner Draw属性:这个属性有三个选项:No(不采用任何自绘),Fixed(固定属性的列表高度和宽度),Variable(改变列表的高度和宽度).最直白的理解分别是:不响应DrawItem()、响应DrawItem(不响应MeasureItem)、响应MeasureItem(也响应DrawItem)。也就是说,需要将三个风格严格对应起来。

43c9b8ce-99ff-4778-aa85-e8fb559aae53

  二、自定义CComboBox不经过DrawItem函数

  原因:同上。

  三、CComboBox的GetLBText函数取到空的字符串问题。

  原因:可能是属性未设置正确:Has Strings属性有没有选上。如果没有选上该属性,即使调用了AddString函数,也在无法调用GetLBText函数来获取字符串。

扫描二维码推送至手机访问。

版权声明:本文由鸟的天空发布,如需转载请注明出处。

本文链接:http://xjtudll.cn/Exp/642/

标签: C#
分享给朋友:

“ComboBox自绘异常与DrawItem不响应等问题” 的相关文章

万年历星期算法分析

 1、 蔡勒公式  w=(y+[y/4]+[c/4]-2*c+[26*(m+1)/10]+d-1)%7             &...

手表EL升压电路分析

手表EL升压电路分析

前言:折腾了许久的EL升压电路,总算是搞清楚原理了。 EL(Electroluminescence)发光屏是一种电致发光材料发光屏,在结构上,电致发光材料夹在两个电极之间。它的上电极是一种透明的导电膜,称为ITO膜(Indium Tin Oxide film),用于透射光线,而下电极是第二电极,其...

Proteus7.9 SP1安装包及和谐下载

Proteus7.9SP1安装包下载地址:http://d.1tpan.com/tp0050113584                 ...

SVN取消版本控制

SVN取消版本控制

想要取消某个文件夹的SVN版本控制 想要取消它,没有直接显而易见的办法。TortoiseSVN里自带了工具,只不过方法比较诡异。 右键选中目录,TortoiseSVN->导出 导出目录和现有的目录必须一致。 然后,就会提示你取消版本控制。选“移除版本控制”即可。...

金蝶K3 SQL报表更改子系统(路径)

金蝶K3 SQL报表更改子系统(路径)

金蝶K3 SQL路径是存储在 ICClassSQLReport 1、K3 BOS集成开发工具里 打开你SQL报表准备放入的子系统 比如,要放到【生产任务管理】里 从里面随便找个报表的名称,例如:拖期生产任务单 2、查询想要转移子系统的报表和第一步找的报表名称 我这里想转移【车间在制品存量】 sel...

VS2010 HelpLibrary

VS2010 HelpLibrary

1、VS2010 HelpLibrary路径更改 找到helplibmanager.exe.config (C:\Program Files\Microsoft Help Viewer\v1.0\),打开 helplibmanager.exe.config (用记事本或其他文本编辑软件),将 key...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。