DELPHI 控制Combobox只能从下拉菜单中选择文字,不能输入其他文字?

DELPHI之Combobox

DELPHI 控制Combobox只能从下拉菜单中选择文字,不能输入其他文字?

有方法1:控件Style属性选择:csDropDownList

缺点:默认为空值,无法对Combobox进行代码赋值,即:当前数据进行切换过程中,它会一直默认空值,或一直显示为你从下拉列表所选择的值,不会因为数据值变更而变更。


有方法二:通过KeyPress事件的代码控制,即if与pos或进行字符串的比较。

缺点:代码冗余。特别是下拉列表特别多的情况。


有方法三:通过KeyPress事件的代码控制,即key:=#0;

问题完美解决。


附带style属性:

1,csownerDrawfixed:只能下拉,不能修改其文本。

2,csOwnerDrawVariable:同上,查不多。

3,csSimple:关闭下拉功能。

4,csDropDown可以下拉,可以修改。

5,如果你要既不允许下拉,也不允许修改,但又要通过代码进行赋值,则需要先将其禁用,即combobox1.Enabled :=false;

再进行代码赋值:如combobox1.text:='1234';

————————

#Delphi #CxGrid #DELPHI软件开发 #DELPHI数据库编程 #DELPHI编程

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。