Je suis en train de compiler un programme (trouvé ici: http://sourceforge.net/projects/lisem/) en suivant les instructions dites par l'auteur. Cependant, lors de la compilation dans Qt Creator, il donne l'erreur:conversion invalide de 'QWidget *' à 'QwtPlotCanvas *' [-fpermissive]
invalid conversion from 'QWidget*' to 'QwtPlotCanvas*' [-fpermissive]
pour cette ligne dans LisUImapplot.cpp
186 picker = new MyPicker(MPlot->canvas());
lien vers le fichier d'en-tête (LisUImapplot.h) se trouvent sur le même dossier comme le fichier cpp.
class MyPicker: public QwtPlotPicker
{
public:
MyPicker(QwtPlotCanvas *canvas):
QwtPlotPicker(canvas)
{
setTrackerMode(AlwaysOn);
}
virtual QwtText trackerTextF(const QPointF &pos) const
{
QColor bg(Qt::white);
bg.setAlpha(100);
QwtPlotItemList list = plot()->itemList(QwtPlotItem::Rtti_PlotSpectrogram);
QwtPlotSpectrogram * sp = static_cast<QwtPlotSpectrogram *> (list.at(1));
double z = sp->data()->value(pos.x(), pos.y());
QString txt = "";
if (z > -1e10)
txt.sprintf("%.3f", z);
QwtText text = QwtText(txt);
text.setColor(Qt::black);
text.setBackgroundBrush(QBrush(bg));
return text;
}
};
J'espère que vous pouvez m'aider à ce sujet. Je vous remercie!
J'utilise Qt 5.1.1 MinGW 32 bits et Qwt 6.1.0
Quel est le type de retour de 'MPlot-> toile()'? Quel type a le pointeur 'picker'? –