E2015在Delphi中使用编辑框

时间:2016-02-26 10:56:41

标签: delphi

我有三个编辑框,这些框用于将参数提供给我的数据库的查询,然后返回执行并返回所需的结果。这一切都有效,我遇到的问题是这个 :

 if ((DayOfWeekSCH.Text) and (EndTimeSCH.Text) and (StartTimeSCH.Text)) <> '' then

DayOfWeekSCHEndTimeSCHStartTimeSCH都是编辑框,我正在尝试做的是确保在执行代码执行查询之前这些框不为空。但是我得到了E2015 Error,我不明白为什么我会得到它。

编辑:这是完整的错误代码:

  

[dcc32错误] PAvailableForm.pas(37):E2015运算符不适用于此操作数类型

1 个答案:

答案 0 :(得分:2)

  

E2015:运算符不适用于此操作数类型

其中<string> and <string>没有意义,因为and被解释为布尔运算符或位运算符,具体取决于其操作数:因此错误。

请参阅Boolean OperatorsLogical (Bitwise) Operators

似乎你想要实现这样的目标:

if DayOfWeekSCH.Text + EndTimeSCH.Text + StartTimeSCH.Text <> '' then

无论如何,以上是执行字符串比较的错误方法 您可能希望查看this answer如何检查字符串是否为空。

与此问题相关,由于编辑框(例如TEdit)来自TControl,因此可以使用GetTextLen方法检查文本缓冲区大小:if { {1}}文字为空。

0