我正在用Qt编程,并在事件处理程序之间编写了以下内容:
void PaintedTextBrowser::mouseMoveEvent(QMouseEvent *ev)
{
...
QPoint *point = new QPoint(0, ev->pos.y());
...
}我在编译时得到了错误:
错误:'ev->QMouseEvent::pos‘没有类类型
但当我将代码修改为:
void PaintedTextBrowser::mouseMoveEvent(QMouseEvent *ev)
{
...
QPoint pos = ev->pos();
QPoint *point = new QPoint(0, pos.y());
...
}效果很好。我在这里缺少的概念是什么?
发布于 2013-02-22 19:40:03
错误很明显,实际上-- QMouseEvent::pos不是类,it's a function返回对QPoint的引用,所以不能在它上使用点运算符。
我猜你想写:
QPoint *point = new QPoint(0, ev->pos().y());
// ^^
// note the parentheses发布于 2013-02-22 19:39:54
你似乎缺少了括号:
void PaintedTextBrowser::mouseMoveEvent(QMouseEvent *ev)
{
...
QPoint *point = new QPoint(0, ev->pos().y());
// ^^
...
}https://stackoverflow.com/questions/15031809
复制相似问题