Qt5的插件

## 在定義中使用Q_PLUGIN_METADATA,與qt4的不同
class SimpleStylePlugin : public QStylePlugin
{
    Q_OBJECT
    Q_PLUGIN_METADATA(IID "org.qt-project.Qt.QStyleFactoryInterface" FILE "simplestyle.json")

public:
    SimpleStylePlugin() {}

    QStringList keys() const;
    QStyle *create(const QString &key) override;
};
## 添加Json文件   simplestyle.json


{
    "Keys": [ "simplestyle" ]
}


## 源文件
//! [0]
QStringList SimpleStylePlugin::keys() const
{
    return QStringList() << "SimpleStyle";
}
//! [0]

//! [1]
QStyle *SimpleStylePlugin::create(const QString &key)
{
    if (key.toLower() == "simplestyle")
        return new SimpleStyle;
    return 0;
}


QProxyStyle  qt4的windowsstyle已廢棄

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章