the following code works normally but I couldn't assign the model to the view using setproperty method
@#include <QtDeclarative/QDeclarativeExtensionPlugin>
#include <QtDeclarative/qdeclarative.h>
#include <QtGui/QGraphicsProxyWidget>
#include <QTableview>
#include <QSqlqueryModel>
#include <QDebug>
class MyView : public QGraphicsProxyWidget
{
Q_OBJECT
Q_PROPERTY(QSqlQueryModel *model READ model WRITE setModel)
public:
MyView(QGraphicsItem* parent = 0)
: QGraphicsProxyWidget(parent),view(new QTableView()),m_model(new QSqlQueryModel())
{
setWidget(view);
}
void setModel(QSqlQueryModel *inModel)
{
m_model = inModel;
}
QSqlQueryModel *model()
{
return m_model;
}
private:
QTableView *view;
QSqlQueryModel *m_model;
};
class QWidgetsPlugin : public QDeclarativeExtensionPlugin
{
Q_OBJECT
public:
void registerTypes(const char *uri)
{
qmlRegisterType<MyView>(uri, 1, 0, "MyView");
}
};
#include "qWidgets.moc"
Q_EXPORT_PLUGIN2(qmlqwidgetsplugin, QWidgetsPlugin);@
this is the qml file
@import QtQuick 1.0
import "QWidgets" 1.0
Rectangle {
id: window
property int margin: 30
width: 640; height: 480
color: palette.window
MyView{
}
}
@