注册 登录
编程论坛 Delphi论坛

用Edit+ComboBox实现ComboBox只读模式

rosege 发布于 2008-11-26 20:06, 4184 次点击
只有本站会员才能查看附件,请 登录

前几天在论坛里面提问,还没有得到更好的方法,然后自己想了个变通的方法。
1.在窗口中放入一个ComboBox组件;
2.在ComboBox上覆盖一个Edit组件;
3.设置Edit的ReadOnly为True;
4.设置ComboBox的TabStop设置为False;
5.在ComboBox的OnChange事件中输入下面的代码:
begin
   Edit1.Text:=ComboBox1.Text;
   Edit1.SetFocus;
end;
运行后,就可以实现了。
3 回复
#2
夜风敲窗2008-11-27 09:41
ComboBox有个属性style,设为csDropDownList.
#3
夜风敲窗2008-11-27 09:43
不好意思,貌似另一个贴子已经讨论过了。。。当我没发啊。。。
#4
rosege2008-11-28 08:24
以下是引用夜风敲窗在2008-11-27 09:41的发言:

ComboBox有个属性style,设为csDropDownList.


设置这个属性后,文本不能被选择。
还有如果这个ComboBox是显示数据库中的文本,设置为csDropDownList后,要给它赋值太麻烦了。
我的这个例子是为了实现ComboBox类似Edit的只读功能。
所以才萌生了这个念头。

[[it] 本帖最后由 rosege 于 2008-11-28 08:35 编辑 [/it]]
1