Ukudala usetyenziso lwe-Ubuntu Touch
Inxalenye yesithathu yolu ngcelele lwezithuba (icandelo lokuqala, Inxalenye yesibini) apho sisakha khona isicelo Ubuntu Touch okanye ngokufanayo Ubuntu desktop. Ndizakongeza indawo ebendiyiphosile kwisithuba esigqithileyo, kwaye oko kukuthi nangona sonyuse izinto ezixabisekileyo zokusilela, ukubetha kunye namanqaku, emva koko aziboniswanga kwiscreen, kungenxa yokuba khange sitshintshe iipropathi zombhalo weelebheli:
Ilebheli {id: ukungaphumeleli kokubhaliweyo: "Ukusilela:" + ukungagqibeki umbala: "bomvu"} Ilebheli {id: hits umbhalo: "hits:" + born} Ilebheli {id: points text: "Points:" + npoints fontSize: "medium "}
Ukuqhubeka komdlalo womdlalo
Ixesha
Ewe, njengoko sele sisazi, inkqubela phambiliBar ibonisa ixesha lokuba siphendule umbuzo. Ukulawula ixesha esiza kusebenzisa ngalo isibali-xesha, isibali xesha yinto ephindaphindwayo kwisithuba se-x milliseconds, kule meko ixesha ngalinye siza kulixela ukuba sandise inkqubela phambili ye-ProgressBar; Kodwa ngaphambi kokuba ndijonge ukuba ingaba ifikelele esiphelweni sexesha, ukuba ifikelela esiphelweni, kufuneka sithathe ubomi.
Ungabona umgca wekhowudi esingekayiphumezi (PopupUtils.open (incoko yababini)), lo mgca kukuvula incoko yomdlalo wokuphela komcimbi ukuba asisayi kuphila (i-3 bugs isuswe), kamva kule post siza kubona ukuba siyenza njani le ncoko.
Ikhowudi yexesha (sinokuyibeka ngezantsi kwePogressBar):
ProgressBar {id: iiankile zexesha.horizontalCenter: parent.horizontalCenter minimumValue: 0 maximumValue: 300} Timer {id: simpletimer c: 100 phinda: ukusebenza ngenene: kuyinyani ngeTriggered: {if (time.value <time.maximumValue) time.value + = 1.0 enye {ukungagqibeki = ukungagqibeki + 1 ukuba (ukungagqibeki <3) {num = num + 1 Logic.nextQuestion (num) time.value = time.minimumValue} enye {simpletimer.stop () PopupUtils.open (dialog)}} }}
Njengoko sibona, kwi -Triggered sibeka ikhowudi eya kuthi inyuse inkqubela phambili yokongeza iyunithi e-1 qho nge-100ithubamilli-imizuzwana. Qaphela ukuba songeze amanqaku amabini kwi-ProgressBar, minimumValue kunye maximumValue, ethi, njengoko ubona, lelona xabiso liphezulu kunye nexabiso elincinci.
Ukuqala nokumisa isibali-xesha:
simpletimer.start () simpletimer.stop ()
Khetha (50%, Friza kunye noLandelayo)
Kuqala masenze izinto ezintathu ezilawulayo ezinokuthi zisetyenziswe kube kanye kuphela:
ipropathi int ipesenti: 0 ipropathi int kunye: 0 ipropathi int ngokulandelayo: 0
50%
Iqhosha {id: b50 umbhalo: "50%" ucofiwe: {if (percent == 0) {var correct = aDocument.contents.questions [num] .correcta if (correct == 1) {resp2.enabled = false resp3. yenziwe = buxoki} enye ukuba (ichanekile == 2) {resp1.nikwe amandla = ubuxoki .4nabled = ubuxoki} enye ukuba (ichanekile == 3) {resp1.enabled = ubuxoki resp4.enabled = false} enye {resp2.enabled = i-resp1 engeyiyo inikwe amandla = ubuxoki} ipesenti = 1}}
Ngeyenziwe = bubuxoki into esiyenzayo kukubeka iqhosha ukuze lingena kucinezelwa, ngendlela yokuba sifumane impendulo echanekileyo ngeDocument.contents.questions [num] .Lungile kwaye ukusuka apha kuxhomekeke ekubeni yeyiphi echanekileyo «siyasusa »Amaqhosha amabini angekhoyo.
Ingqele
Iqhosha {id: bCon okubhaliweyo: "Friza" ucofiwe: {ukuba (nge == 0) simpletimer.stop () nge = 1}}
Le yenye yezona zilula, kufuneka simise isibali xesha nge simpletimer.stop (), ewe, kufuneka siyivule kwakhona (kwaye sibeke inkqubela phambili kwi-0) xa sihamba ngombuzo.
Okulandelayo
Iqhosha {id: bNext text: "Okulandelayo" kuKhethiwe: {if (next == 0) {num = num + 1 Logica.nextQuestion (num) next = 1}}}
Sisebenzisa umsebenzi esele siwenzile ukugqithisa umbuzo (olandelayoQuestion).
Iingxoxo
Ukuphelisa umdlalo siza kusebenzisa iDialog, nokuba kungenxa yokuba siphumelele (akusekho mibuzo) okanye ngenxa yokuba siphulukene (senze iimpazamo ezi-3), ukusebenzisa iincoko zababini kufuneka singenise imodyuli:
ukungenisa Ubuntu
Siza kwenza incoko esixelela ukuba siphulukene:
Icandelo {id: ingxoxo yencoko yababini {id: isihloko sencoko yababini: "Umdlalo uphelile!" okubhaliweyo: "Uphulukene nobomi bonke :(" Iqhosha {umbhalo: "Phuma" ucinyiwe: Qt.quit ()} Inkinobho {umbhalo: "Qalisa ngaphezulu" umbala: UbuntuColors.orange kwiCofiwe: {num = 0; Logica.nextQuestion ( num) npoints = 0 births = 0 PopupUtils.close (incoko yababini)}}}}
Sinamaqhosha amabini, elinye lokuvala usetyenziso (Qt.quit ()) kunye nelinye ukuqala umdlalo kwakhona. Siqala izinto eziguquguqukayo ukuya ku-0 kwaye sivale incoko yababini.
Ukuvula incoko yababini:
PopupUtils.open (incoko yababini)
Ukuyivala:
PopupUtils.close (ingxoxo)
Masibone incoko yababini ekupheleni komdlalo:
Singayenza incoko yababini ngokuchanekileyo ngokutshintsha isazisi kunye nesicatshulwa apho sithi siphumelele.
Ukuyila umbuzo ngokudibeneyo
Xa siyiyila ngaphakathi GTK, Senza incoko yababini, kodwa ngeli xesha siza kuyenza kwi-Tab, nangona kunjalo iya kuba nobume obufanayo:
Njengoko sibona, siya kusebenzisa iileyibhile, i-TextArea ukubhala umbuzo, i-4 TextField kunye ne-4 switch; okokugqibela, iqhosha lokudibanisa umbuzo. Masijonge nje ikhowudi:
ukungenisa ngaphakathi iQtQuick 2.0 yokungenisa Ubuntu.Components 0.1 Tab {isihloko: i18n.tr ("+ Imibuzo") Ikhasi {id: pageAdd Column {anchors.top: pageAdd.top anchors.topMargin: 50 spacing: 15 width: parent.width height: parent.height - 50 Label {id: question text: "Yongeza umbuzo kwiziko ledatha:" anchors.horizontalCenter: parent.horizontalCenter fontSize: "large"} TextArea {width: parent.width - 20 height: units.gu (12) umxholoWidth: iiyunithi.gu (30) umxholoUbude: iiyunithi.gu (60) iiankile.horizontalCenter: umzali.horizontalCenter} Umqolo {isithuba: ii-anchors ezili-15.} Tshintsha {kujongwe: buxoki}} Umqolo {isithuba: 1 iiankile.horizontalCenter: umzali.horizontalCenter UmbhaloField {indawo yokubambaText: "Impendulo 300" ububanzi: 15} Tshintshela {kuhlolwe: buxoki}} Umqolo {isithuba: 2 iiankile.horizontalCenter: umzali. horizontalCenter TextField {placeholderText: "Impendulo 300" ububanzi: 15} Tshintshela {itshekiwe: buxoki}} Umqolo {isithuba: 3 iiankile.horizontalCenter: parent.horizontalCenter TextField {placeholderText: "Impendulo 300" ububanzi: 15} Tshintshela {itshekishwe: buxoki}} Iqhosha {okubhaliweyo: "Yongeza +" iiankile.horizontalCenter: parent.horizontalCenter ububanzi: parent.width - 4}}}}
Masibone ukuba ijongeka kanjani:
Ukuba ngoku sivavanya iiSwitshi, siza kubona ukuba singabamakisha bonke njengombuzo ochanekileyo, kwaye inye kuphela inokuba yiyo, ke ngoko siya kwenza oku kulandelayo: siya kuba nakho ukunika isazisi kutshintsho ngalunye (nakwindawo yokubhaliweyo kuba kuya kufuneka sifumane umxholo ukuyigcina kwindawo yogcino lwedatha) ngokwempendulo yakho, kwaye xa siyicofa siza kubabeka bonke abanye kwi-check = mode engeyiyo
Umqolo {isithuba: 15 iiankile.horizontalCenter: parent.horizontalCenter TextField {id: res1 placeholderText: "Impendulo 1" ububanzi: 300} Tshintshela {id: sw1 checked: false onClicked: {if (sw1.checked == true) {sw2. itshekishwe = bubuxoki sw3.checked = false sw4.checked = false}}}}
Ukuba siyazama ngoku siza kubona ukuba singamakisha njani enye.
Amanqaku amahle kakhulu kwaye achazwe kakuhle.
Ngendlela, ngaba ucebisa ezinye iincwadi, iziteshi ze-YouTube okanye iiBlogs eziseSpanish ukuba zifunde ukuphuhlisa kwi-QML Ubuntu.
Ewe, ngeSpanish ngokuqinisekileyo kukho ezinye izifundo kwiYouTube, okanye ibhlog engaqhelekanga, kodwa inyani kukuba akukho nto incinci.
Ndiyabona ukuba uqhagamshela nge-nokia ukuba iyisimboli sokugqibela, unokwenza izicelo kunye ne-QML, kwaye yindlela endifunde ngayo, nantsi iwebhusayithi yophuhliso lwe-nokia: http://developer.nokia.com/ (kukho iityhuthoriyali, gqiba iiprojekthi ...)
Uthotho lweeposti ezigqwesileyo, enkosi ngegalelo.
Enkosi ngesifundo,
Kodwa andiqondi ukuba imibuzo kunye neempendulo zongezwa njani kwiziko ledatha.
Ngeqhosha lokongeza.
Ndiyabonga ngento yonke.