QML 모델을 C++ 코드로 구현하는 방법 중 하나 > QT 강좌/팁

본문 바로가기
사이트 내 전체검색

QT 강좌/팁

QT/X11 QML 모델을 C++ 코드로 구현하는 방법 중 하나

페이지 정보

작성자 no_profile 구름님 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 댓글 1건 조회 8,599회 작성일 16-12-03 13:44

본문

-- CPP source
...
    QString jsonText =
            "{"
            "  \"data\": ["
            "      { \"color\": \"red\", \"text\": \"빨강\" },"
            "      { \"color\": \"green\", \"text\": \"녹색\" },"
            "      { \"color\": \"blue\", \"text\": \"파랑\" },"
            "      { \"color\": \"yellow\", \"text\": \"노랑\" },"
            "      { \"color\": \"purple\", \"text\": \"보라\" },"
            "      { \"color\": \"pink\", \"text\": \"분홍\" },"
            "      { \"color\": \"lightgreen\", \"text\": \"연두\" },"
            "      { \"color\": \"lightblue\", \"text\": \"하늘\" },"
            "      { \"color\": \"brown\", \"text\": \"갈색\" }"
            "  ]"
            "}"
            ;
    QJsonObject json = QJsonDocument::fromJson(jsonText.toUtf8()).object();
    QJsonArray array = json.value(QStringLiteral("data")).toArray();
    rootObject()->setProperty("model", array);
...

-- main.qml
Item {
    id: iamarootobject
    property variant model  // --- [1]
    ListView {
        id: iamalistview
        anchors.fill: parent
        model: iamarootobject.model
        delegate: Rectangle {
            width: parent.width; height: 30
            Text { anchors.fill: parent; text: modelData.text; color: modelData.color }
        }
    }
}

그러니까.. 2차원 배열(?), 테이블(?) 형식의 데이터를 qml 모델로 만드는 방법중 하나 입니다.
간단한 것인데, 구글링해도 자료를 찾아보기 힘들어 올려봅니다.

위의 [1] 부분이 재미나더군요.
property alias model: iamalistview.model => 이렇게 해놓으면 에러가 나고 인식을 못합니다.
반드시 property variant model로 사용자 프로퍼티를 만들어야 하더군요.
아마도 variant 부분에서 jsonarray가 variantmaparray(?)로 변경되어 처리되어지는 듯 합니다.
data가 두가지 이상의 KEY/VALUE로 구성된다면 modelData.KEY로 값을 얻어오고
한가지로만 구성되어 있으면 KEY/VALUE의 맵형식을 따를 필요없이 VALUE array만으로 해도 되니 - 1차원배열 -
이때는 'modalData'로만 적어서 값을 얻어오면 됩니다.
음.. 그리고 1차원 배열 형식이라면 차라리,
rootobject()->setProperty(..., QVariant::fromValue(qStringListData))
이렇게 쓰는것은 쉽게 찾아볼 수 있습니다.

추천0

댓글목록

Total -2,911건 1 페이지
QT 강좌/팁 목록
번호 제목 글쓴이 조회 추천 날짜
-2911 Qtopia no_profile 돌돌가 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 6 0 11-29
-2912 QT/Win32 no_profile 이지수입니다 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 1450 0 02-14
-2913 QT/Win32 no_profile 주영대감 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 2670 0 05-31
-2914 QT/Win32 no_profile devilqoo 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 8045 0 09-10
열람중 QT/X11 no_profile 구름님 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 8600 0 12-03
-2916 QT/X11 no_profile 구름님 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 9530 1 03-07
-2917 QT/Embedded no_profile 요원009 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 14343 0 11-13
-2918 QT/Win32 no_profile tmdwn 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 8731 0 05-18
-2919 QT/Embedded no_profile 잉농 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 8479 0 05-14
-2920 QT/Embedded no_profile korone 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 9018 0 04-01
-2921 QT/Embedded no_profile 구름님 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 27501 1 03-31
-2922 QT/Win32 no_profile korone 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 18305 0 03-17
-2923 QT/Win32 no_profile devilqoo 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 7846 0 02-13
-2924 QT/Win32 no_profile 인라이너 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 7914 1 02-12
-2925 QT/Embedded no_profile 김아무개 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 20254 0 11-12
-2926 QT/Embedded no_profile korone 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 7977 0 11-11
-2927 QT/Embedded no_profile korone 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 8032 0 11-11
-2928 QT/Win32 no_profile devilqoo 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 14093 0 10-22
-2929 QT/Win32
Qt와 C++11 댓글+ 2
no_profile devilqoo 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 14116 1 10-12
-2930 QT/Win32 no_profile devilqoo 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 15588 0 10-09
-2931 QT/Win32 no_profile devilqoo 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 10088 0 10-02
-2932 QT/Win32 no_profile devilqoo 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 12641 0 10-01
-2933 QT/X11 no_profile 별님 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 7179 0 09-25
-2934 QT/Win32 no_profile 구름님 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 8732 0 09-16
-2935 QT/Win32 no_profile tmdwn 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 9442 0 09-03
-2936 QT/Win32 no_profile tmdwn 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 9331 0 09-02
-2937 QT/Win32 no_profile tmdwn 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 9740 2 09-02
-2938 QT/X11 no_profile 나무나무나무 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 11511 0 07-25
-2939 QT/Win32 no_profile 구름님 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 8888 2 07-11
-2940 QT/Win32 no_profile 구름님 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 12216 2 07-09
게시물 검색

  • 게시물이 없습니다.

회원로그인

설문조사

새로운 홈페이지에 대한 평가

접속자집계

오늘
634
어제
772
최대
4,337
전체
4,697,606

Copyright © korone.net. All rights reserved.