青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

posts - 319, comments - 22, trackbacks - 0, articles - 11
  C++博客 :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

1.導(dǎo)出Person類,并且一個(gè)Job類,Job類包含一個(gè)Person的指針

2.具體導(dǎo)出過程

1.通過屬性來實(shí)現(xiàn),具體的請(qǐng)看代碼


3.具體代碼



// person.h
#ifndef PERSON_H
#define PERSON_H
#include <QObject>
#include <QColor>
class Person : public QObject
{
    Q_OBJECT
    // 設(shè)置設(shè)置屬性的名字是 name
    // 對(duì)應(yīng)讀取函數(shù)名字 getName
    // 對(duì)應(yīng)寫函數(shù)名字 setName
    // 屬性發(fā)生改變后發(fā)送信號(hào) sendNameChange
    Q_PROPERTY(QString name READ getName WRITE setName NOTIFY sendNameChange)
   // 設(shè)置設(shè)置屬性的名字是 age
   // 對(duì)應(yīng)讀取函數(shù)名字 getAge
   // 對(duì)應(yīng)寫函數(shù)名字 setAge
   // 屬性發(fā)生改變后發(fā)送信號(hào) sendAgeChange
   Q_PROPERTY(int age READ getAge WRITE setAge NOTIFY sendAgeChange)
public:
    explicit Person(QObject *parent = 0);
    QString getName(void) const;
    void setName(const QString& name);
    int getAge(void);
    void setAge(int age);
signals:
    void sendNameChange(void);
    void sendAgeChange(void);
private:
    QString     m_Name;
    int         m_Age;
};
/*
 設(shè)想一份工作給予一個(gè)人
 */
class Job : public QObject
{
    Q_OBJECT
    Q_PROPERTY(Person *per READ getPerson WRITE setPerson NOTIFY sendPersonChange)
    Q_PROPERTY(QString jn READ getJobName WRITE setJobName NOTIFY sendJobNameChange)
public:
    explicit Job(QObject *parent = 0);
    ~Job();
    void setPerson(Person *per);
    Person *getPerson(void) const;
    void setJobName(const QString & jobname);
    QString getJobName(void) const;
signals:
    void sendPersonChange();
    void sendJobNameChange();
private:
    Person *m_Person;
    QString m_JobName;
};
#endif // PERSON_H


// person.cpp
#include "person.h"
//---------------------------------
//
Person::Person(QObject *parent) :
    QObject(parent), m_Name("unknow"), m_Age(0)
{
}
//---------------------------------
//
QString Person::getName(void) const
{
    return m_Name;
}
//---------------------------------
//
void Person::setName(const QString& name)
{
    m_Name = name;
    emit sendNameChange();
}
//---------------------------------
//
int Person::getAge(void)
{
    return m_Age;
}
//---------------------------------
//
void Person::setAge(int age)
{
    m_Age = age;
    emit sendAgeChange();
}
//---------------------------------
//
Job::Job(QObject *parent)
    :QObject(parent), m_Person(0), m_JobName("unknown")
{
}
//---------------------------------
//
Job::~Job()
{
}
//---------------------------------
//
void Job::setPerson(Person *per)
{
    m_Person = per;
    emit sendPersonChange();
}
//---------------------------------
//
Person *Job::getPerson(void) const
{
    return m_Person;
}
//---------------------------------
//
void Job::setJobName(const QString & jobname)
{
    m_JobName = jobname;
    emit sendJobNameChange();
}
//---------------------------------
//
QString Job::getJobName(void) const
{
    return m_JobName;
}


// main.cpp
#include <QtGui/QApplication>
#include <QtDeclarative/QDeclarativeView>
#include <QtDeclarative/QDeclarativeEngine>
#include <QtDeclarative/QDeclarativeComponent>
#include "person.h"
int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    qmlRegisterType<Person>("People",1,0,"Person");
    //qmlRegisterType<Person>();
    qmlRegisterType<Job>("People",1,0,"Job");
    QDeclarativeView qmlView;
    qmlView.setSource(QUrl::fromLocalFile("../UICtest/UICtest.qml"));
    qmlView.show();
    return a.exec();
}


// UICtest.qml
import Qt 4.7
import People 1.0 //如果是qmlRegisterType<Person>(); 導(dǎo)出就可以注釋這條
Rectangle {
    width: 640
    height: 480
    Job {
        id: jobA;
        jn: "Learn";
        per: Person { id: ps; name: "Luly"; age: 25; }
    }
    // 顯示這份工作的一些信息
    Rectangle{
        x: 100; y: 100;
        width: 100; height: 100;
        Text { text: "Job name:" + jobA.jn; }
        Text { y: 20; text: "Person name:" + ps.name; }
        Text { y: 40; text: "Person age:"  + ps.age; }
    }
    MouseArea{
        anchors.fill: parent;
        onClicked:{
            // 我要改變工作的名字 工作人的信息
            jobA.jn = "Clean House";
            ps.name = "Tom";
            ps.age = 30;
        }
    }
}


說明:

主要是導(dǎo)出了兩個(gè)類PersonJob, Job 包含一個(gè)Person的指針,這樣后,可以看到

QML中,我們需要給予Job對(duì)象一個(gè)Person來盡心賦值。


青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            国产乱码精品一区二区三区不卡| 欧美mv日韩mv亚洲| 亚洲精品日韩久久| 久久一区二区三区国产精品| 亚洲桃花岛网站| 亚洲国产一二三| 国内精品视频久久| 国产精品高清网站| 欧美女人交a| 麻豆成人精品| 久久免费精品视频| 欧美专区福利在线| 亚洲欧美日韩另类精品一区二区三区| 亚洲精品久久在线| 亚洲成人自拍视频| 久久人人97超碰精品888| 欧美在线一二三四区| 亚洲图片在线观看| 亚洲最新色图| 99热免费精品| 洋洋av久久久久久久一区| 亚洲成色777777在线观看影院| 国产日韩综合| 国产日韩亚洲欧美| 国产日本欧美在线观看| 国产精品亚洲综合色区韩国| 国产精品一卡二| 国产精品任我爽爆在线播放| 国产精品高潮久久| 国产精品扒开腿做爽爽爽软件| 欧美日韩一区二区在线观看视频| 欧美巨乳在线| 欧美日韩成人一区二区| 欧美日韩国产限制| 欧美日韩一区二区三区| 国产精品yjizz| 国产精品欧美日韩久久| 国产毛片一区二区| 国产午夜精品全部视频播放| 国产午夜精品一区二区三区视频| 国产欧美亚洲视频| 国内精品免费在线观看| 在线欧美福利| 亚洲美女精品成人在线视频| 亚洲视频网站在线观看| 亚洲综合不卡| 久久久精品tv| 欧美大片在线看免费观看| 亚洲国产精品久久久久| 亚洲另类在线视频| 亚洲在线日韩| 久久久久网站| 欧美日韩第一区| 国产精品毛片大码女人| 国模精品娜娜一二三区| 最新国产乱人伦偷精品免费网站| 一区二区黄色| 欧美一区高清| 欧美www视频| 9色porny自拍视频一区二区| 欧美一区二区久久久| 久久只有精品| 国产精品大片wwwwww| 国产亚洲欧美另类一区二区三区| 在线精品视频一区二区三四| 一本久道久久综合狠狠爱| 午夜精品区一区二区三| 女人色偷偷aa久久天堂| 一本色道久久综合狠狠躁篇怎么玩 | 亚洲免费观看| 午夜久久久久久| 玖玖玖免费嫩草在线影院一区| 亚洲国产成人av| 亚洲一区在线播放| 美女诱惑黄网站一区| 欧美午夜久久| 亚洲国产成人91精品| 亚洲伊人网站| 免费国产自线拍一欧美视频| 99在线精品视频在线观看| 欧美在线视频a| 欧美日韩视频在线第一区| 狠狠久久亚洲欧美专区| 这里只有精品丝袜| 美国十次了思思久久精品导航| 99精品国产福利在线观看免费| 欧美在线一区二区| 欧美日韩久久精品| 在线播放日韩专区| 亚洲性色视频| 亚洲国产一区二区a毛片| 性视频1819p久久| 欧美日韩国产色视频| 在线电影一区| 欧美亚洲一区| av成人手机在线| 美女网站久久| 激情综合电影网| 欧美在线首页| 亚洲私人黄色宅男| 欧美黄色一级视频| 在线观看中文字幕亚洲| 久久gogo国模啪啪人体图| 亚洲美女免费视频| 欧美成人免费全部| 国内外成人在线视频| 欧美亚洲一级| 亚洲先锋成人| 欧美午夜视频网站| 一本色道婷婷久久欧美| 欧美黑人国产人伦爽爽爽| 久久国产日韩欧美| 国产日韩欧美中文| 欧美一区二粉嫩精品国产一线天| 99国产精品视频免费观看| 欧美风情在线观看| 亚洲高清一区二| 欧美3dxxxxhd| 久久夜色精品国产欧美乱| 狠狠色丁香久久婷婷综合丁香| 欧美一区二区黄| 亚洲在线一区二区| 国产精品视频1区| 欧美一区二区黄色| 亚洲免费在线电影| 国产欧美日韩免费| 久久久精品国产免费观看同学 | 好吊一区二区三区| 久久噜噜亚洲综合| 久久精品夜色噜噜亚洲a∨| 狠狠久久综合婷婷不卡| 美国十次成人| 嫩草国产精品入口| 亚洲精品一区二区在线| 亚洲欧洲日产国产网站| 欧美片第一页| 亚洲一区久久久| 亚洲男人影院| 国模精品一区二区三区色天香| 久久亚洲不卡| 免费看亚洲片| 一区二区三区国产在线| 亚洲性视频网站| 国产综合久久| 欧美高清一区二区| 欧美猛交免费看| 午夜精品久久| 欧美在线free| 亚洲区欧美区| 99成人精品| 国产亚洲毛片| 亚洲高清视频一区| 欧美日韩在线不卡| 久久精品国产亚洲高清剧情介绍| 久久精品国产99精品国产亚洲性色 | 性欧美video另类hd性玩具| 香蕉久久精品日日躁夜夜躁| 一区二区三区在线免费观看| 亚洲黄色在线| 国产精品免费一区二区三区观看| 久久久久国产精品一区| 免费成人av在线看| 亚洲免费在线观看| 久久久久久久综合日本| 99热这里只有精品8| 欧美一区二区三区在线播放| 91久久国产综合久久蜜月精品| 在线中文字幕不卡| 永久免费毛片在线播放不卡| 日韩视频免费观看| 国产主播一区二区| 亚洲精选91| 精品99一区二区三区| 日韩午夜激情| 精品动漫3d一区二区三区| 亚洲精品视频在线播放| 国产主播一区| 一区二区av在线| 亚洲国产精品国自产拍av秋霞| 一二美女精品欧洲| 在线观看一区视频| 亚洲伊人久久综合| 99国产精品99久久久久久| 欧美一区国产在线| 在线亚洲一区| 老司机亚洲精品| 久久国产婷婷国产香蕉| 欧美日本高清视频| 麻豆精品视频在线| 国产精品美女| 日韩小视频在线观看专区| 18成人免费观看视频| 亚洲欧美第一页| 一区二区久久久久| 久久综合导航| 久久―日本道色综合久久| 国产精品久久久久久av下载红粉| 亚洲国产成人91精品| 一区二区三区在线观看国产| 亚洲免费在线|