查看完整版本: [-- if(eventType == "windows_generic_MSG") 提示出错 --]

QTCN开发网 -> 《零基础学Qt4编程》专栏 -> if(eventType == "windows_generic_MSG") 提示出错 [打印本页] 登录 -> 注册 -> 回复主题 -> 发表主题

simonfly 2018-12-19 08:31

if(eventType == "windows_generic_MSG") 提示出错

刚接触Qt,做个全局热键时,按照网上的资料照抄,可是一直出错,请教!
两个错误:
1. no mach for 'operateor==' (operand types are 'const QByteArray' and const char [20]')
2. invalid operand to binary expression ( 'const QByteArray' and const char [20]')

bool MyWinEventFilter::nativeEventFilter(const QByteArray &eventType, void *message, long *){    if(eventType == "windows_generic_MSG")    {
    }    return false;}

simonfly 2018-12-19 08:32
刚接触Qt,做个全局热键时,按照网上的资料照抄,可是一直出错,请教!
两个错误:
1. no mach for 'operateor==' (operand types are 'const QByteArray' and const char [20]')
2. invalid operand to binary expression ( 'const QByteArray' and const char [20]')

bool MyWinEventFilter::nativeEventFilter(const QByteArray &eventType, void *message, long *)
{
    if(eventType == "windows_generic_MSG")
    {

    }
    return false;
}

笑颜 2018-12-19 08:44
既然编译器提示你没有合适的比较运算符操作函数,那你可以自己写一个,或者找一个有比较运算符的函数,比如if(eventType == "windows_generic_MSG") 改成if(eventType == QByteArray("windows_generic_MSG")),我不知道行不行,但是得顺着编译器的意思来!

simonfly 2018-12-19 08:50
笑颜:既然编译器提示你没有合适的比较运算符操作函数,那你可以自己写一个,或者找一个有比较运算符的函数,比如if(eventType == "windows_generic_MSG") 改成if(eventType == QByteArray("windows_generic_MSG")),我不知道行不行,但是得顺着编译器的意思来! (2018-12-19 08:44) 

谢谢回复。。。。

按你说的改了,还是不行。但是根据新的错误提示,加了include,就好了。
网上的那些,怎么都没有include QByteArray呢,可能在那里配置了。

kaon 2018-12-20 08:51
可能在include别的header时候包含了QByteArray


查看完整版本: [-- if(eventType == "windows_generic_MSG") 提示出错 --] [-- top --]



Powered by phpwind v8.7 Code ©2003-2011 phpwind
Gzip disabled