Te hanga i tetahi taupānga mo Ubuntu Touch [QML] - [Wahanga 2]

Whakataki:

Ana kei konei taatau pou e whai ake nei wahanga tuatahiI tenei ka arotahi taatau ki te whakahaere i nga raraunga (paatai), ka tiimata me te waahanga arorau o te keemu, a te wa e whai ake nei ka whakaotihia e taatau te arorau ka whakatinana i te waa me nga waahanga e 3.

Ka kitea e koe te waehere i roto i taku putunga Launchpad (pāwhiritia konei), ka whakahoutia e au i taku haerenga.

Paetukutuku:

Mo te paataka raraunga ka whakamahia e maatau U1db, he paepae raraunga tenei e penapena ana i te whakatakotoranga JSON.

Ko te mea tuatahi kia tirohia he aha nga raraunga me penapena, he patai taatau kotahi (haunga nga tuhinga o te patai he pai ke he kaitohu), me nga whakautu e 1 pea, ana ko te 4 anake ka taea, no reira ko te tuhinga kei JSON kia kotahi te patai:

{"id": 1, "pātai": "ka puta ko dev.fromlinux.net", "whakautu": {r1: "āe", r2: "kāo", r3: "kaore e mohiotia", r4: "he whakautu teka tenei"}, "tika": 3}

Kei te kite maatau kua hangai taatau ki te whakatakotoranga JSON kei reira he tohu tautuhi, he aho me te paatai ​​me te r1, r2 e tohu ana i te whakautu 1 me te whakautu 2, ka mutu kei a maatau nei nga whakautu tika.

Me titiro iti taatau mahi U1db, ko te mea tuatahi hei whakamahi i te U1db ko te kawemai i te konae:

import U1db 1.0 as U1db

Ka whakaatuhia e maatau te papaarangi:

U1db.Database {
id: aDatabase
path: "aU1DbDatabase"
}

Ka tiakina nga paerewa korero hei aU1DbDatabase.u1db, inaianei ka hangaia he tuhinga:

U1db.Document {
id: aDocument
database: aDatabase
docId: 'helloworld'
create: true
defaults: { "hello": "Hello World!" }
}

Ka kitea e maatau te whakatakotoranga {«hello»: «tetahi mea»}, ki te whakahaere i nga paatai, hei taapiri ranei i nga raraunga, whiwhi raraunga, whakakorea atu. Kei a maatau te waahanga U1db.Query.

Ka kitea e maatau a akoranga i runga i te paetukutuku whanaketanga o Ubuntu.

Me haere ki ta maatau tono ka hanga i ta maatau papaarangi, kia kite e mohiotia ana e maatau te paataka.

U1db.Database {id: db pātai; ara: "pātaidb.u1db"}

Kaati, me waiho e tatou etahi waahanga taunoa ki te paatai ​​paatai ​​pātai pātai.

    U1db.Document {id: aDocument database: questionsdb docId: 'pātai' hanga: taunoa tūturu: {"pātai": [{"pātai": "Will dev.fromlinux.net?", "R1": "āe", " r2 ":" no "," r3 ":" ihu "," r4 ":" whakautu hē "," correct ":" 3 "}, {" pātai ":" Ko wai te hagrid (harry potter)? "," r1 ":" Te tumuaki tuarua o te kura "," r2 ":" Te ranger "," r3 ":" The kaiako of transformations "," r4 ":" A prefect "," correct ":" 2 "}, {"pātai": "He aha te tāone matua o Tiorangi?", "r1": "Amsterdam", "r2": "Reykjavik", "r3": "Tbilisi", "r4": "Almaty", "tika" : "2"}]}}

Kei te mohio ahau kaore i te whakaatuhia mai te waehere me te mea e tika ana, engari ki te tiro atu ka kitea he kaupapa ta tatou pātai, e ai ki te »[]» ka whakaputahia e maatau ka maha pea (kaore i te taatai) nga waahanga; i tenei keehi ka 4 taatau ma te taunoa, e 4 nga paatai ​​me a raatau whakautu.

Ki te tiki i nga waahanga tuhinga JSON, ka taea e taatau te whakarite te kaitohu o te tuhinga i hangaia e matou (ara he Tuhinga). Whakaarohia e hiahia ana tatou ki te tiki i nga korero mo te patai tuatahi:

aDocument.contents.questions [0] .patai

Ko tenei raina waehere e whakahoki ana i nga korero paatai ​​o te tuhinga aDocument, o te waahanga 0 (te tuatahi o te taupū), ara: "Ka whai dev.fromlinux.net?". Mena ka tohua e maatau te nama 1, ka pa ki te paatai ​​tuarua.

Te whakamahere i te raru o te kēmu

Ana, inaianei kua mohio taatau ki te whakahaere i tetahi waahanga paanui mo te paanui kua ea nga paatai, ka tukuna e taatau te kaupapa o te keemu. Ko te mea tuatahi ka hanga e matou he konae JavaScript (.js): Taapirihia he hou -> Qt -> Kōnae Js. Ka karanga ahau ki a ia arorau.js.

I roto i te konae ka hangaia e maatau etahi mahi, hei kawemai i te konae js ki roto i ta maatau tuhinga qml:

kawemai "logica.js" hei Logica

Ka honoa e matou te ingoa Logica, na reira ka hiahia matou ki te karanga i tetahi mahi ka mahia e matou hei Logica.funcion (), me te mea he taonga e whai ana i nga tikanga.

Mo tenei wa, kia kore e roa te waa, ka waiho e taatau te waa paatai ​​me nga waahanga hei muri ake, ka aro atu ki nga paatai ​​me nga tohu, tirohia he mahi ka whakamahia e taatau ki te neke whakamua mai i te pātai:

mahi nextQu Uiui (num) {// time = 0 question.text = aDocument.contents.questions [num] .quEST; resp1.text = aDocument.contents.questions [num] .r1; resp2.text = aDocument.contents.questions [num] .r2; resp3.text = aDocument.contents.questions [num] .r3; resp4.text = aDocument.contents.questions [num] .r4; }

Kei te kite taatau, ka paahihia e maatau te nama paatai ​​kei hea taatau hei tautohetohe mai i konei ka tuhia nga whakautu ki nga patene me te tapanga paatai. Me titiro inaianei ki te whakamana mena he tika nga whakautu kua tohua:

hit mahi (num, kōwhiringa) {var hit = false; var num_correct = aDocument.contents.questions [num] .correct; mena he (whiringa == whakatika_num) patua = pono; hokinga hit; }

Ma te waehere ano e korero, mena ko te whiringa i kowhiria he orite ki ta te putunga korero i whakatakoto, katahi ka pono, mena ka kore. Na, kua tohua enei mahi, ka whakamahia ki ta maatau waehere qml.

Ko te mea tuatahi ka taapirihia e maatau he taurangi hei whakahaere i te paatai ​​kei roto tatou, ka kiia ko num; E toru ano nga taera e toru ano hoki: nga pa, nga ngaro me nga tohu.

    taonga tot num: 0 taonga int nfaults: 0 taonga int whanau: 0 taonga int npoints: 0

I te timatanga kei te 0 katoa raatau.

Na ka taapirihia e maatau he Paatene ki nga paatene whakautu katoa. onClick, e ai ki tona ingoa, he kaupapa ka puta ka pa ana taua paatene:

            Pato {id: resp1 kuputuhi: "Whakautu 1" punga.horizontalCenter: parent.horizontalCenter whanui: parent.width - 20 onClicked: {mena (Logic.ciguro (num, 1)) {num = num + 1; Logic.nextQu Uiui (num) npoints = npoints + 50 whanau = whanautanga + 1} etahi atu {nfaults = nfaults + 1}}}

Ka kite maatau ka paatohia e koe te paatene, ka tirotirohia mena he tika, kaore ranei, mena ka taapirihia nga tohu ka paahi i te patai, mena ka toe kotahi te ora

Hei whakamutunga ka mahi maatau i te paatai ​​patai tuatahi ka utaina nga waahanga Wharangi:

    Wharangi {id: pageGame Component.onComplete: {Logic.nextPregunta (0)}

Me titiro e pehea ana:

whakamātautau


Ko nga korero o te tuhinga e piri ana ki o maatau kaupapa o matatika whakatika. Ki te ripoata i tetahi paatene paato Here.

2 korero, waiho maau

Waiho to korero

Ka kore e whakaputaina tō wāhitau īmēra.

*

*

  1. He kawenga mo nga raraunga: Miguel Ángel Gatón
  2. Te kaupapa o te raraunga: Whakahaerehia te SPAM, te whakahaere korero.
  3. Ture: To whakaae
  4. Whakawhitinga korero: Kaore nga korero e tukuna ki nga taha tuatoru engari ma te ture herenga.
  5. Rokiroki raraunga: Paetukutuku e whakahaerehia ana e Occentus Networks (EU)
  6. Tika: I nga wa katoa ka taea e koe te whakaiti, te whakaora me te muku i o korero.

  1.   Kapiera ka mea

    Ka whai ahau i nga kaupae, ka mahi nga mea katoa. Mo te mahi tahi ka kii ahau:
    * Kaore e whakarereke i te uara o nga whiunga me nga ngaro. Me taapiri e koe ki tena ki ia patene i roto i to patene patene.
    * Ana tera kei te raina:
    mena (Logic.acerto (num, 1)) {
    me whakarereke e koe te 1 mo te nama paatene / whakautu.

    lolbimbo, He pai ki ahau to koha. Ko te tumanako ka tiimata nga kaiako hou !!!

    Mauruuru mo te tohatoha.

    1.    lolbimbo ka mea

      He pai ki ahau i korero koe mo enei take na te mea kaore au i marama i roto i te pou, he aha atu, kaore au e maumahara ki nga tohu, nga angitu me nga ngoikoretanga, mena ka tiro koe ka kite koe ka peehi ana matou i te paatene, ka taapirihia e maatau nga tohu angitu ... engari kaore e kitea i te Tapanga, koina te take me waiho ki tana taonga tuhituhi e whakaatu ana i nga tohu:

      Tapanga {
      id: rahua
      kuputuhi: «Hapa:» + he
      tae: "whero"
      }

      Tapanga {
      id: hits
      kuputuhi: «Hits:» + whanau
      }

      Tapanga {
      id: tohu
      kuputuhi: «Piro:» + Kupu
      momotuhi: "reo"
      }

      Ka whakamarama ano e au ki te waahanga 3.

bool(pono)