Читаем QT 4: программирование GUI на С++ полностью

Выполненный в строке 22 вызов QWidget::setLayout() устанавливает менеджер компоновки для окна. За кулисами создаются дочерние связи QSpinBox и QSlider с виджетом, для которого установлен менеджер компоновки, и по этой причине нам не требуется в явной форме задавать родительский виджет при конструировании виджета, размещаемого в зоне действия менеджера компоновки.

Рис. 1.6. Виджеты приложения Age.

Несмотря на то что мы не задавали в явной форме положение и размер ни одного из виджетов, QSpinBox и QSlider аккуратно расположились в ряд. Это объясняется тем, что QHBoxLayout автоматически определяет разумные размеры и положение виджетов, попадающих в зону его действия, в зависимости от потребностей этих виджетов. Менеджеры компоновки освобождают нас от нудного кодирования размещения виджетов нашего приложения на экране и гарантируют плавное изменение размеров окон.

Используемый средствами разработки Qt подход к построению графического пользовательского интерфейса легко понятен и очень гибок. Среди работающих в Qt программистов наиболее распространен подход, когда сначала создаются все необходимые графические элементы, а затем соответствующим образом настраиваются их свойства. Программисты добавляют виджеты к компоновщикам графических элементов, которые автоматически устанавливают для них нужные размер и положение. Управление работой графического интерфейса осуществляется через взаимодействие виджетов друг с другом посредством применения механизма сигналов и слотов Qt.

<p>Использование справочной документации</p>

Справочная документации по средствам разработки Qt является важным инструментом в руках любого разработчика Qt—программ, поскольку в ней есть все необходимые сведения по любому классу и любой функции Qt. В данной книге используются многие из классов и функций Qt, но далеко не все, и они описываются не во всей полноте. Для более эффективного использования Qt вам необходимо хорошо разбираться в ее справочной документации и следует сделать это как можно скорее.

Эта документация имеется в формате HTML (каталог doc/html в системе Qt), и ее можно просматривать любым веб-браузером. Вы можете также использовать программу Qt Assistant (помощник Qt) — браузер системы помощи в Qt, который обладает мощными средствами поиска и индексирования информации и поэтому быстрее находит нужную информацию и им легче пользоваться, чем веб-браузером. Для запуска Qt Assistant необходимо выбрать функцию Qt by Trolltech v4.x.y | Assistant в меню Start (пуск) системы Windows, задать команду assistant в системе Unix или дважды щелкнуть по Assistant в системе Mac OS X Finder.

Рис. 1.7. Просмотр документации Qt программой Qt Assistant в системе Mac OS X.

Ссылки в разделе «API Reference» (ссылки программного интерфейса) домашней страницы обеспечивают различные пути навигации по классам Qt. На странице «All Classes» (все классы) приводится список всех классов программного интерфейса Qt. На странице «Main Classes» (основные классы) перечисляются только наиболее используемые классы Qt. Например, вы можете просмотреть классы и функции, использованные нами в этой главе.

Следует отметить, что описание наследуемых функций приводится в базовом классе: например, класс QPushButton не имеет описания функции show(), но это описание имеется в родительском классе QWidget. На рис. 1.8 показана взаимосвязь классов, которые использовались в этой главе.

Рис. 1.8. Дерево наследования для классов, используемых в данной главе.

Справочная документация для текущей версии Qt и нескольких более старых версий можно найти в сети Интернет по адресу http://doc.trolltech.com/. На этом сайте также находятся избранные статьи из журнала Qt Quarterly (Ежеквартальное обозрение по средствам разработки Qt); этот журнал предназначается для программистов Qt и распространяется по всем коммерческим лицензиям.

В данной главе представлены ключевые концепции связи сигналов и слотов и компоновки графических элементов. Здесь также начал раскрываться последовательный и полностью объектно—ориентированный подход к конструированию и применению виджетов. Если вы просмотрите документацию Qt, то обнаружите, что в ней применяется единый подход, позволяющий легко понять способы применения новых виджетов; вы также обнаружите, что тщательный подбор в Qt имен функций, параметров, элементов перечислений и т.д. делает удивительно приятным и простым программирование в Qt.

Перейти на страницу:

Похожие книги

1С: Бухгалтерия 8 с нуля
1С: Бухгалтерия 8 с нуля

Книга содержит полное описание приемов и методов работы с программой 1С:Бухгалтерия 8. Рассматривается автоматизация всех основных участков бухгалтерии: учет наличных и безналичных денежных средств, основных средств и НМА, прихода и расхода товарно-материальных ценностей, зарплаты, производства. Описано, как вводить исходные данные, заполнять справочники и каталоги, работать с первичными документами, проводить их по учету, формировать разнообразные отчеты, выводить данные на печать, настраивать программу и использовать ее сервисные функции. Каждый урок содержит подробное описание рассматриваемой темы с детальным разбором и иллюстрированием всех этапов.Для широкого круга пользователей.

Алексей Анатольевич Гладкий

Программирование, программы, базы данных / Программное обеспечение / Бухучет и аудит / Финансы и бизнес / Книги по IT / Словари и Энциклопедии
1С: Управление торговлей 8.2
1С: Управление торговлей 8.2

Современные торговые предприятия предлагают своим клиентам широчайший ассортимент товаров, который исчисляется тысячами и десятками тысяч наименований. Причем многие позиции могут реализовываться на разных условиях: предоплата, отсрочка платежи, скидка, наценка, объем партии, и т.д. Клиенты зачастую делятся на категории – VIP-клиент, обычный клиент, постоянный клиент, мелкооптовый клиент, и т.д. Товарные позиции могут комплектоваться и разукомплектовываться, многие товары подлежат обязательной сертификации и гигиеническим исследованиям, некондиционные позиции необходимо списывать, на складах периодически должна проводиться инвентаризация, каждая компания должна иметь свою маркетинговую политику и т.д., вообщем – современное торговое предприятие представляет живой организм, находящийся в постоянном движении.Очевидно, что вся эта кипучая деятельность требует автоматизации. Для решения этой задачи существуют специальные программные средства, и в этой книге мы познакомим вам с самым популярным продуктом, предназначенным для автоматизации деятельности торгового предприятия – «1С Управление торговлей», которое реализовано на новейшей технологической платформе версии 1С 8.2.

Алексей Анатольевич Гладкий

Финансы / Программирование, программы, базы данных

Все жанры