Как получить значение поля?

3 ноября 2014 г. Просмотров: 714
Среди элементов оконной формы пользовательского интерфейса особую важность имеют поля выбора или ввода данных. Обработка устанавливаемых значений зачастую должна происходить мгновенно. Поэтому разработчику необходимо получать информацию при любом изменении в окнах. В разных ситуациях при считывании значения поля нужно учитывать конкретный тип данных и область видимости элемента формы.

Инструкция

  • При разработке приложений с помощью библиотеки программирования Qt оконные формы обычно создаются на основе виджетов (класс QWidget) или диалогов (QDialog). Элементы для выбора или ввода данных добавляются в объекты указанных классов и визуально располагаются на стандартном или диалоговом окне.
  • Для работы с выпадающим списком используйте класс QComboBox. Его видимое рабочее поле может быть активным для ввода данных или заблокированным. Если пользователь имеет возможность ввести в поле значение, то получить его можно, обратившись к объекту списка. Пример кода:QComboBox m_comb;QString result;result = m_comb.currentText();Здесь объект m_comb с помощью метода currentText() возвращает текущее значение верхнего поля, причем оно может быть как введенным, так и выбранным в выпадающем списке. В строковой переменной result сохранено значение из видимого рабочего поля комбобокса.
  • Однако веденный тип данных может быть и числовым. Для перевода строковых значений в нужный тип выполните одну из следующих операций:double resD = result.toDouble();float resF = result.toFloat();int resI = result.toInt(); Здесь в переменную resD сохранится полученное значение поля, но уже в double, в resF – значение типа float и в resI – целочисленное значение int.
  • При использовании в качестве элемента для ввода данных редактора однострочного текста QLineEdit возьмите нужную информацию с помощью следующей записи: result = m_edit.text(). Здесь объект m_edit с помощью функции text() возвращает введенное пользователем в поле строковое значение.
  • Элемент QListBox может выполнять аналогичную функцию в оконной форме, доступ к введенным данным для этого объекта также похож на ранее указанный: m_list.currentText().
  • Обращаясь ко всем экземплярам описанных классов, необходимо иметь права на соответствующий доступ, так как вызов закрытых методов и объектов невозможен из сторонних функций. Рассматриваемые методы для получения значения поля имеют открытый статус.
  • Оцените статью!