2015-05-22 89 views
2

我想检查文本框是否有一些用户输入的文本,但不能。下面总是语句返回falseRogue Wave编辑框文本

if (MyLLVTextEdit->getMessage() == NULL) 
{ 
    MessageBox(NULL,"No Text", "no Text",NULL); 
} 

也试过

if (MyLLVTextEdit->getMessage() == "") 
{ 
    MessageBox(NULL,"No Text", "no Text",NULL); 
} 


if (MyLLVTextEdit->getValue() == NULL) 
{ 
    MessageBox(NULL,"No Text", "no Text",NULL); 
} 

if (MyLLVTextEdit->getValue() == "") 
{ 
    MessageBox(NULL,"No Text", "no Text",NULL); 
} 

任何想法吗?

+0

确实的Rogue Wave提供GUI库同时?我曾经知道它是STL实现之一。 –

回答

1

难道不是你熟悉的库,但你应该使用strcmp功能比较字符串(字符*),以检查是否字符串是空的,你可以叫strlen

strlen(MyLLVTextEdit->getMessage()) == 0 

operator==可用于只有当你使用一些字符串类如std::stringQString或其他什么

-2

getMessage()返回什么?非常不可能是char *,因为Rogue Wave拥有自己的支持unicode的字符串类。

如果它是一种Rogue Wave字符串类,检查是否有一种方法来测试内容是否为空。

也许你应该使用类似:

if (MyLLVTextEdit->getMessage().isNull()) 

if (MyLLVTextEdit->getMessage().isEmpty())