如果DBLookUpComboBox没有选中任何内容,则禁用按钮。

时间:2015-02-18 10:04:30

标签: delphi delphi-xe2 sybase-asa

使用Delphi XE2。

编写与客户数据库相关的软件包。我有一个显示所有客户信息的表单,其中一个字段是一个lookupcombobox,旁边有一个按钮。 (lookupcombobox下拉一个包含多个字符串的列表)

打开表单时(插入/编辑模式)我需要在lookupcombobox中选择任何内容时禁用lookupcombobox旁边的按钮,否则如果选择了某些内容则启用了其他内容。

我希望这会很直接。我似乎无法为自己解决这个问题。

1 个答案:

答案 0 :(得分:0)

在Delphi的帮助中:

  

<强> Vcl.DBCtrls.TDBLookupControl.KeyValue

     

表示KeyField字段和DataField的公共值   领域。

     

使用KeyField确定查找控件表示的值   (不是查找控件显示的值)。设置KeyValue时   查找控件尝试从ListSource中查找记录   数据集,其中KeyField的值与KeyValue匹配。如果这样的匹配   找到后,查找控件会在其上显示ListField的值   记录。

因此,当我玩它时,我可以做以下事情:

  Button1.Enabled := not (DBLookupComboBox1.KeyValue = null);

这没有连接到它的数据库,因此如果之前组合框中有数据并且之前选择了其中一个项目,则不知道会发生什么。你必须测试。