Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: error: expected ')' before 'id'
Форум на CrossPlatform.RU > Библиотеки > Qt > Qt Общие вопросы
QMainWindow
Вылезка эта ошибка: D:\Documents\Qt\fb2Reader\fb2Reader-build-desktop\..\fb2Reader\ColorBox.h:13: ошибка: expected ')' before 'id' Какая еще скобка? Все скобки стоят как надо...

Вот коды:
colorbox.h
Раскрывающийся текст
#ifndef COLORBOX_H
#define COLORBOX_H

#include <QMouseEvent>
#include <QColorDialog>
#include <QPainter>
#include <QFlags>

class ColorBox
{
    Q_OBJECT
public:
    ColorBox(ColorBoxWidgetId id, QWidget *parent = 0); //строка 13
    enum ID
    {
    FontColorBox, BackgroundColorBox, NotesColorBox
    };
    Q_DECLARE_FLAGS(ColorBoxWidgetId, ID)
private:
    QColor color;
    QPainter p;
    ColorBoxWidgetId id;
protected:
    virtual void mousePressEvent(QMouseEvent *ev);
    virtual void paintEvent(QPaintEvent *e);
signals:
    void clicked();
    void selectedColor(QColor color, ColorBoxWidgetId id);
public slots:
    void chooseColor();
    void setColor(QColor color);
};

#endif // COLORBOX_H

colorbox.cpp
Раскрывающийся текст
#include "ColorBox.h"
#include <QDebug>

ColorBox::ColorBox(ColorBoxWidgetId id, QWidget *parent)
{
    this->setGeometry(0,0,parent->width(),parent->height());
    this->id = id;
}

void ColorBox::chooseColor()
{
    QColorDialog *dialog = new QColorDialog(this);
    connect(dialog, SIGNAL(colorSelected(QColor)), this, SLOT(setColor(QColor)));
    dialog->exec();
}

void ColorBox::setColor(QColor color)
{
    this->color = color;
    update();
    emit selectedColor(color, id);
}

void ColorBox::mousePressEvent(QMouseEvent *ev)
{
    emit clicked();
}

void ColorBox::paintEvent(QPaintEvent *e)
{
    p.begin(this);
    p.fillRect(this->rect(), color);
    p.end();
}
xls
Да у вас id это и член класса и наименование параметра.Что-нить надо переименовать
QMainWindow
У меня в других классах куча переменных, которые совпадают с параметрами методов. Все ок.
Litkevich Yuriy
тип ColorBoxWidgetId не известен.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2025 IPS, Inc.