Starp lietotāja saskarnes loga formas elementiem īpaši svarīga ir atlases vai datu ievades lauki. Iestatīto vērtību apstrādei bieži jābūt momentānai. Tāpēc izstrādātājam jāsaņem informācija par visām izmaiņām logos. Dažādās situācijās, lasot lauka vērtību, jāņem vērā konkrētais datu elementa veids un formas elementa darbības joma.
Instrukcijas
1. solis
Izstrādājot lietojumprogrammas ar Qt programmēšanas bibliotēku, loga formas parasti tiek veidotas no logrīkiem (QWidget klase) vai dialoglodziņiem (QDialog). Atlases vai datu ievades elementi tiek pievienoti norādīto klašu objektiem un vizuāli atrodas standarta vai dialoglodziņā.
2. solis
Izmantojiet QComboBox klasi, lai strādātu ar nolaižamo sarakstu. Tās redzamais darba lauks var būt aktīvs datu ievadīšanai vai bloķēts. Ja lietotājs laukā var ievadīt vērtību, to varat iegūt, atsaucoties uz saraksta objektu. Koda piemērs: QComboBox m_comb; QString result; result = m_comb.currentText (); Šeit objekts m_comb, izmantojot metodi currentText (), atgriež augšējā lauka pašreizējo vērtību, un to var vai nu ievadīt, vai arī izvēlēties nolaižamajā izvēlnē. sarakstā. Virknes mainīgā rezultāts satur vērtību no redzamās kombinētās kastes darba lauka.
3. solis
Tomēr ievadītais datu tips var būt arī skaitlisks. Lai pārveidotu virknes vērtības vajadzīgajā tipā, veiciet vienu no šīm darbībām: double resD = result.toDouble (); float resF = result.toFloat (); int resI = result.toInt (); Šeit iegūtā lauka vērtība tiks saglabāta mainīgajā resD, bet jau dubultā, resF - peldošā vērtība un resI - int vesela skaitļa vērtība.
4. solis
Izmantojot datu ievades elementu QLineEdit vienas rindas teksta redaktoru, paņemiet nepieciešamo informāciju ar šādu ierakstu: result = m_edit.text (). Šeit objekts m_edit, izmantojot funkciju text (), atgriež laukā lietotāja ievadīto virknes vērtību.
5. solis
QListBox elements var veikt līdzīgu funkciju logveida formā, piekļuve šī objekta ievadītajiem datiem ir arī līdzīga iepriekš norādītajam: m_list.currentText ().
6. solis
Piekļūstot visiem aprakstīto klašu gadījumiem, jums ir jābūt atbilstošām piekļuves tiesībām, jo trešo pušu funkcijās nav iespējams izsaukt privātas metodes un objektus. Aplūkotajām lauka vērtības iegūšanas metodēm ir atvērts statuss.