Z prvkov formulára okna užívateľského rozhrania majú osobitný význam polia pre výber alebo zadávanie údajov. Spracovanie nastavených hodnôt musí byť často okamžité. Preto musí vývojár dostávať informácie o akejkoľvek zmene v oknách. V rôznych situáciách musíte pri čítaní hodnoty poľa brať do úvahy konkrétny dátový typ a rozsah prvku formulára.
Inštrukcie
Krok 1
Pri vývoji aplikácií s programovacou knižnicou Qt sa okenné formuláre zvyčajne vytvárajú z widgetov (trieda QWidget) alebo dialógov (QDialog). Prvky pre výber alebo zadávanie údajov sa pridávajú k objektom určených tried a vizuálne sa nachádzajú v štandarde alebo dialógovom okne.
Krok 2
Na prácu s rozbaľovacím zoznamom použite triedu QComboBox. Jeho viditeľné pracovné pole môže byť aktívne pre zadávanie údajov alebo uzamknuté. Ak je užívateľ schopný zadať hodnotu do poľa, potom ju získa odkazom na objekt zoznamu. Príklad kódu: QComboBox m_comb; výsledok QString; result = m_comb.currentText (); Tu objekt m_comb pomocou metódy currentText () vracia aktuálnu hodnotu horného poľa a je možné ho zadať alebo zvoliť v rozbaľovacej ponuke. zoznam. Výsledok premennej reťazca obsahuje hodnotu z viditeľného pracovného poľa komboboxu.
Krok 3
Zadaný dátový typ však môže byť aj číselný. Ak chcete previesť hodnoty reťazca na požadovaný typ, vykonajte jednu z nasledujúcich operácií: double resD = result.toDouble (); float resF = result.toFloat (); int resI = result.toInt (); Tu bude výsledná hodnota poľa uložená v premennej resD, ale už v dvojnásobku, v resF - floatová hodnota a v resI - int celočíselná hodnota.
Krok 4
Ak používate jednoriadkový textový editor QLineEdit ako prvok zadávania údajov, získajte potrebné informácie pomocou tejto položky: result = m_edit.text (). Tu objekt m_edit pomocou funkcie text () vráti hodnotu reťazca zadanú používateľom do poľa.
Krok 5
Prvok QListBox môže vykonávať podobnú funkciu v okennej podobe, prístup k zadaným údajom pre tento objekt je tiež podobný ako predtým zadaný: m_list.currentText ().
Krok 6
Pri prístupe ku všetkým inštanciám popísaných tried musíte mať príslušné prístupové práva, pretože volanie súkromných metód a objektov je z funkcií tretích strán nemožné. Uvažované metódy na získanie hodnoty poľa majú otvorený stav.