首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >错误的含义是什么:'ev->QMouseEvent::pos‘没有类类型

错误的含义是什么:'ev->QMouseEvent::pos‘没有类类型
EN

Stack Overflow用户
提问于 2013-02-22 19:30:06
回答 2查看 967关注 0票数 2

我正在用Qt编程,并在事件处理程序之间编写了以下内容:

代码语言:javascript
复制
void PaintedTextBrowser::mouseMoveEvent(QMouseEvent *ev)
{
    ...
    QPoint *point = new QPoint(0, ev->pos.y());
    ...
}

我在编译时得到了错误:

错误:'ev->QMouseEvent::pos‘没有类类型

但当我将代码修改为:

代码语言:javascript
复制
void PaintedTextBrowser::mouseMoveEvent(QMouseEvent *ev)
{
    ...
    QPoint pos = ev->pos();
    QPoint *point = new QPoint(0, pos.y());
    ...
}

效果很好。我在这里缺少的概念是什么?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-02-22 19:40:03

错误很明显,实际上-- QMouseEvent::pos不是类,it's a function返回对QPoint的引用,所以不能在它上使用点运算符。

我猜你想写:

代码语言:javascript
复制
QPoint *point = new QPoint(0, ev->pos().y());
//                                   ^^
//                     note the parentheses
票数 5
EN

Stack Overflow用户

发布于 2013-02-22 19:39:54

你似乎缺少了括号:

代码语言:javascript
复制
void PaintedTextBrowser::mouseMoveEvent(QMouseEvent *ev)
{
    ...
    QPoint *point = new QPoint(0, ev->pos().y());
    //                                   ^^
    ...
}
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15031809

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档