13.1.13.4.2. Arvosäätimet#
Nämä ovat säätimiä, jotka sisältävät asetuksen. Kukin kantaa value-arvoa, ja Tallenna kirjoittaa muokatun value-arvon takaisin säätimeen. Alla oleva taulukko on nopea yhdistys säätimestä JSON-tyyppiin, jonka se tallentaa; seuraavat osiot dokumentoivat jokaisen avaimen.
Säädin | Tallentaa |
|---|---|
checkbox | totuusarvo tai kokonaisluku |
combobox | valittu arvo tai sen indeksi |
radio | valittu arvo tai sen indeksi |
spinbox | kokonaisluku |
doublespinbox | luku (liukuluku) |
slider | kokonaisluku |
lineedit | merkkijono |
Kaikki arvosäätimet hyväksyvät myös yhteiset avaimet (name, label, tooltip, enabled); katso yleiskatsaus. label näytetään säätimen vieressä (itse ruudussa, kun kyseessä on checkbox).
13.1.13.4.2.1. checkbox#
Päälle/pois-kytkin. Valinnaisesti kolmitilainen, asetuksille, joilla on ”asettamaton” keskitila.
{ "type": "checkbox", "name": "draw_overlays", "label": "Draw Overlays", "value": true }
Argumentit:
label (merkkijono) – ruudun vieressä näytettävä teksti. Vain pelkkä teksti (toisin kuin muilla säätimillä, joiden nimikkeet ottavat muotoiltua tekstiä).
tristate (totuusarvo, oletus
false) – salli kolmas, osittain valittu tila.value – alkutila. Kaksitilainen: totuusarvo. Kolmitilainen:
0(pois),1(osittain) tai2(päällä).
Tallentaa: totuusarvon kaksitilaiselle ruudulle; kokonaisluvun 0, 1 tai 2 kolmitilaiselle ruudulle.
13.1.13.4.2.2. combobox#
Pudotusvalikko vaihtoehdoista.
{
"type": "combobox",
"name": "resolution",
"label": "Resolution",
"options": ["QQVGA", "QVGA", "VGA"],
"values": ["qqvga", "qvga", "vga"],
"value": "qvga"
}
Argumentit:
options (merkkijonotaulukko) – valikossa näytettävät kohteet.
values (taulukko) – valinnainen rinnakkainen taulukko tallennettavista arvoista, yksi kutakin option-kohdetta kohti. values-arvon kanssa valikko näyttää
options[i]mutta tallentaavalues[i]– joten käyttäjä näkee ”QVGA”, kun taas tiedosto tallentaa"qvga". Kohteet voivat olla mitä tahansa JSON-tyyppiä. Ilman values-arvoa säädin tallentaa sen sijaan valitun kohteen indeksin.value – alkuvalinta. values-arvon kanssa kohde, joka on yhtä suuri kuin jokin values-arvoista. Ilman values-arvoa valittavan kohteen indeksi (oletus
0).
Tallentaa: vastaavan values-kohteen (mikä tahansa tyyppi), kun values on annettu; muuten valitun indeksin (kokonaisluku).
13.1.13.4.2.3. radio#
Joukko radiopainikkeita – yksi valinta näkyvissä kerrallaan, kuten combobox, mutta kokonaan esiin aseteltuna.
{
"type": "radio",
"name": "mode",
"label": "Mode",
"options": ["Idle", "Track", "Record"],
"values": ["idle", "track", "record"],
"value": "idle",
"orientation": "horizontal"
}
Argumentit:
options (merkkijonotaulukko) – yksi painike kutakin kohdetta kohti.
values (taulukko) – valinnaiset tallennettavat arvot, yksi kutakin option-kohdetta kohti, täsmälleen kuten combobox -säätimessä. Ilman sitä säädin tallentaa valitun indeksin.
value – alkuvalinta, joka verrataan values-arvoihin tai käytetään indeksinä, kuten combobox -säätimessä.
orientation (merkkijono, oletus
"vertical") –"horizontal"asettaa painikkeet riviin, muuten sarakkeeseen.
Tallentaa: vastaavan values-kohteen (mikä tahansa tyyppi) tai valitun indeksin.
13.1.13.4.2.4. spinbox#
Lukuruutu kokonaisluvuille, ylös/alas-nuolilla.
{
"type": "spinbox",
"name": "server_port",
"label": "Port",
"value": 8080,
"min": 0,
"max": 65535,
"group_separator": true
}
Argumentit:
value (kokonaisluku, oletus
0) – alkuluku.min (kokonaisluku, oletus
0tai value, kumpi tahansa on pienempi) – pienin sallittu arvo.max (kokonaisluku, oletus
100tai value, kumpi tahansa on suurempi) – suurin sallittu arvo.step (kokonaisluku, oletus
1) – ylös/alas-askel.prefix (merkkijono) – luvun edessä näytettävä teksti, esim.
"0x".suffix (merkkijono) – luvun jälkeen näytettävä teksti, esim. yksikkö kuten
" px".base (kokonaisluku, oletus
10) – näyttökantaluku; aseta arvoon16näyttääksesi ja muokataksesi lukua heksadesimaalimuodossa.group_separator (totuusarvo, oletus
false) – ryhmittele numerot tuhaterottimilla.special_value_text (merkkijono) – luvun tilalla näytettävä teksti, kun se on arvossa min, esim. näytä ”Off” arvossa
0.
Tallentaa: kokonaisluvun.
13.1.13.4.2.5. doublespinbox#
Lukuruutu desimaaliluvuille.
{
"type": "doublespinbox",
"name": "sensitivity",
"label": "Sensitivity",
"value": 50.0,
"min": 0,
"max": 100,
"step": 0.5,
"decimals": 1,
"suffix": " %"
}
Argumentit:
value (luku, oletus
0) – alkuluku.min (luku, oletus
0tai value, kumpi tahansa on pienempi) – pienin sallittu arvo.max (luku, oletus
100tai value, kumpi tahansa on suurempi) – suurin sallittu arvo.decimals (kokonaisluku, oletus
2) – kuinka monta numeroa näytetään desimaalipilkun jälkeen.step (luku, oletus
1.0) – ylös/alas-askel.prefix (merkkijono) – luvun edessä näytettävä teksti, esim.
"max ".suffix (merkkijono) – luvun jälkeen näytettävä teksti, esim. yksikkö kuten
" %".group_separator (totuusarvo, oletus
false) – tuhaterottimet.special_value_text (merkkijono) – näytettävä teksti, kun luku on arvossa min.
Tallentaa: luvun (liukuluku).
13.1.13.4.2.6. slider#
Vaakasuora liukusäädin, jonka vieressä on reaaliaikainen numeronäyttö.
{
"type": "slider",
"name": "brightness",
"label": "Brightness",
"value": 50,
"min": 0,
"max": 100,
"step": 1,
"suffix": " %",
"ticks": 25
}
Argumentit:
value (kokonaisluku, oletus
0) – alkuasento.min (kokonaisluku, oletus
0tai value, kumpi tahansa on pienempi) – radan alapää.max (kokonaisluku, oletus
100tai value, kumpi tahansa on suurempi) – radan yläpää.step (kokonaisluku, oletus
1) – näppäimistön ja vetämisen askel; vedot napsahtavat lähimpään monikertaan.prefix (merkkijono) – liukusäätimen vieressä olevan numeronäytön edessä näytettävä teksti, esim.
"x".suffix (merkkijono) – näytön jälkeen näytettävä teksti, esim.
" %".ticks (kokonaisluku) – radan alle piirrettyjen asteikkomerkkien väli.
Tallentaa: kokonaisluvun.
13.1.13.4.2.7. lineedit#
Yksirivinen tekstikenttä nimille, salasanoille, osoitteille ja vastaaville.
{
"type": "lineedit",
"name": "hostname",
"label": "Hostname",
"value": "openmv-cam",
"placeholder": "letters, digits, dashes",
"regex": "[A-Za-z0-9-]+",
"clear_button": true
}
Argumentit:
value (merkkijono, oletus
"") – alkuteksti.placeholder (merkkijono) – harmaa vihjeteksti, joka näytetään kentän ollessa tyhjä.
max_length (kokonaisluku) – eniten merkkejä, jotka kenttä hyväksyy.
mask (merkkijono) – syöttömaski, joka kiinnittää sen asettelun, mitä voidaan kirjoittaa, esim.
"000.000.000.000;_"IPv4-osoitteelle. Katso Input masks alla.regex (merkkijono) – säännöllinen lauseke, jota koko syötteen on vastattava. Katso Regular expressions alla.
clear_button (totuusarvo, oletus
false) – näytä pieni tyhjennyspainike kentän sisällä.password (totuusarvo, oletus
false) – piilota teksti pisteinä ja lisää silmäpainike sen paljastamiseksi.
Tallentaa: merkkijonon.
mask ja regex rajoittavat molemmat sitä, mitä kenttä hyväksyy, mutta vastakkaisista suunnista – maski kiinnittää tekstin asettelun, säännöllinen lauseke rajoittaa sen sisältöä. Kenttä, jolla on jompikumpi, on ainoa säädin, joka voi estää tallennuksen: jos sen teksti on epätäydellinen tai ei vastaa, editori luettelee kentän sen label-arvon mukaan ja kieltäytyy tallentamasta, kunnes se on korjattu tai tyhjennetty. Käytä kentässä enintään toista näistä kahdesta.
13.1.13.4.2.7.1. Syöttömaskit#
mask kiinnittää kentän merkki merkiltä: erottimet piirretään valmiiksi käyttäjälle, joka täyttää vain tyhjät kohdat. Kukin maskimerkki edustaa yhtä syöttökohtaa:
9– pakollinen numero;0– valinnainen numero.A/a– pakollinen / valinnainen kirjain.N/n– pakollinen / valinnainen kirjain tai numero.X/x– pakollinen / valinnainen minkä tahansa tyyppinen merkki.H/h– pakollinen / valinnainen heksadesimaalinumero.>/<– muuttaa seuraavat kirjaimet isoiksi / pieniksi;!lopettaa muunnoksen.
Mikä tahansa muu merkki – . merkkijonossa 000.000.000.000, - sarjanumerossa – on kirjaimellinen erotin: se sijoitetaan automaattisesti ja ohitetaan käyttäjän kirjoittaessa. Käyttääksesi maskimerkkiä kirjaimellisena laita sen eteen kenoviiva.
Lopun lähellä oleva ; asettaa täyttämättömille kohdille näytettävän paikanpitäjän: "000.000.000.000;_" näyttää tyhjän kentän muodossa ___.___.___.___. Jätä se pois, niin tyhjät kohdat ovat välilyöntejä. Niin kauan kuin jokin pakollinen kohta on vielä tyhjä, syöte on epätäydellinen, mikä estää tallennuksen.
13.1.13.4.2.7.2. Säännölliset lausekkeet#
regex tarkistaa sisällön eikä asettelua, ja sopii paremmin, kun sääntö on ”nämä merkit, tämä kaava” eikä kiinteä kenttä. Koko syötteen on vastattava – lauseke on ankkuroitu molemmista päistä, joten "[A-Za-z0-9-]+" tarkoittaa vain kirjaimia, numeroita ja väliviivoja alusta loppuun, ei pelkästään ”sisältää yhden”.
Tarkistus suoritetaan jokaisella näppäinpainalluksella. Merkki hyväksytään niin kauan kuin teksti voisi vielä kasvaa täydeksi osumaksi, ja hylätään sillä hetkellä kun se ei voisi, joten käyttäjä ei voi koskaan kirjoittaa itseään johonkin virheelliseen. Kenttä lasketaan kelvolliseksi – ja tallennus sallitaan – vasta kun koko lauseke vastaa; osittainen syöte matkalla sinne pysyy paikoillaan mutta estää tallennuksen, kunnes se on valmis.
Kaavan rakentamiseen ja testaamiseen regex101.com selittää jokaisen osan kirjoittaessasi – aseta sen tyypiksi PCRE2, syntaksi jota editori käyttää.