6
我已经关闭了返回QFrame的库。 我的程序的GUI是用QML(Qt Quick 2.0)开发的。 我需要解决QFrame(QWidget的)集成到QML如何将QWidget集成到QML中(Qt Quick 2.0)
注: 我发现例如:Qt_DIR /例子/ QT-5.3 /声明/ cppextensions/qwidgets,该做些什么,因为我需要。在这个例子中,QWidged被添加到QGraphicsProxyWidget中。我这样编写我的代码,但是当我运行我的应用程序时,它显示在控制台中:“无法将QtQuick 1.0项目(MyPushButton)添加到QtQuick 2.0场景中!”。这是该代码:
class MyPushButton : public QGraphicsProxyWidget
{
Q_OBJECT
Q_PROPERTY(QString text READ text WRITE setText NOTIFY textChanged)
public:
MyPushButton(QGraphicsItem* parent = 0)
: QGraphicsProxyWidget(parent)
{
widget = new QPushButton("MyPushButton");
widget->setAttribute(Qt::WA_NoSystemBackground);
setWidget(widget);
QObject::connect(widget, SIGNAL(clicked(bool)), this, SIGNAL(clicked(bool)));
}
QString text() const
{
return widget->text();
}
void setText(const QString& text)
{
if (text != widget->text()) {
widget->setText(text);
emit textChanged();
}
}
Q_SIGNALS:
void clicked(bool);
void textChanged();
private:
QPushButton *widget;
};
private:
QPushButton *widget;
};
分享一些代码,否则所有答案都是猜测。这也显示了你到目前为止所做的工作以及答案可以依赖的基础。对于你的错误描述,我*猜*你有一个导入QtQuick 2.0在你的场景文件头和QtQuick 1.0/1.1在你的表单文件头。尝试将您的表单“移植”到QtQuick 2.0中 –
可能出现[Qt5。在QML中嵌入QWidget对象](http://stackoverflow.com/questions/13014415/qt5-embed-qwidget-object-in-qml) –