Жасмин Бланшет - QT 4 - программирование GUI на С++

Здесь есть возможность читать онлайн «Жасмин Бланшет - QT 4 - программирование GUI на С++» весь текст электронной книги совершенно бесплатно (целиком полную версию без сокращений). В некоторых случаях можно слушать аудио, скачать через торрент в формате fb2 и присутствует краткое содержание. Город: Москва, Год выпуска: 2007, ISBN: 2007, Издательство: КУДИЦ-ПРЕСС, Жанр: Программирование, на русском языке. Описание произведения, (предисловие) а так же отзывы посетителей доступны на портале библиотеки ЛибКат.

QT 4: программирование GUI на С++: краткое содержание, описание и аннотация

Предлагаем к чтению аннотацию, описание, краткое содержание или предисловие (зависит от того, что написал сам автор книги «QT 4: программирование GUI на С++»). Если вы не нашли необходимую информацию о книге — напишите в комментариях, мы постараемся отыскать её.

Единственное официальное руководстро по практическому программированию в среде Qt 4.1. Применяя средства разработки Qt компании «Trolltech», вы сможете создавать на С++ промышленные приложения, которые естественно работают в средах Windows, Linux/UNIX, Linux для встроенных систем без изменения программного кода и Mac Os X. Книга написана сотрудниками компании «Trolltech». Она представляет собой практическое руководство по успешному применению самой мощной из всех созданных до сих пор версий Qt — Qt 4.1.
Из книги «Qt 4: программирование GUI на С++» вы узнаете о наиболее эффективных приемах и методах программирования с применением Qt 4 и овладеете ключевыми технологиями в самых различных областях — от архитектуры Qt модель/представление до мощного графического процессора 2D. Авторы вооружают читателей беспрецедентно глубокими знаниями модели событий и системы компоновки Qt.
На реалистических примерах они описывают высокоэффективные методы во всех областях — от разработки основных элементов графического пользовательского интерфейса до передовых методов интеграции с базой данных и XML. Каждая глава содержит полностью обновленный материал.
Данное издание:
• Включает новые главы по архитектуре Qt 4 модель/представление и поддержке подключаемых модулей Qt, а также краткое введение в программирование встроенных систем на платформе Qtopia.
• Раскрывает все основные принципы программирования в среде Qt — от создания диалоговых и других окон до реализации функциональности приложений.
• Знакомит с передовыми методами управления компоновкой виджетов и обработкой событий.
• Показывает, как можно с наибольшей эффективностью использовать новые программные интерфейсы Qt 4, в частности мощный графический процессор 2D и новые простые в применении классы—контейнеры.
• Представляет передовые методы Qt 4, которых нет ни в одной книге: от создания подключаемых модулей, расширяющих возможности Qt, и приложений, до применения «родных» для конкретной платформы программных интерфейсов.
• Содержит приложение с подробным введением в программирование на С++ в среде Qt для опытных Java—разработчиков.
Жасмин Бланшет (Jasmine Blanchette) — менеджер по документированию и старший разработчик компании «Trolltech» с 2001 года. Он является редактором «Qt Quarterly», информационного бюллетеня компании «Trolltech», и соавтором книги «Qt 3: программирование GUI на С++».
Марк Саммерфилд (Mark Summerfield) — независимый преподаватель и консультант по С++, Qt и Python. Он работал менеджером по документированию в компании «Trolltech» на протяжении трех лет. Марк является соавтором книги «Qt 3: программирование GUI на С++».

QT 4: программирование GUI на С++ — читать онлайн бесплатно полную книгу (весь текст) целиком

Ниже представлен текст книги, разбитый по страницам. Система сохранения места последней прочитанной страницы, позволяет с удобством читать онлайн бесплатно книгу «QT 4: программирование GUI на С++», без необходимости каждый раз заново искать на чём Вы остановились. Поставьте закладку, и сможете в любой момент перейти на страницу, на которой закончили чтение.

Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Преимуществом внедрения данных в исполняемый модуль является невозможность их потери и возможность создания действительно автономных исполняемых модулей (если использовалась статическая компоновка). Двумя недостатками являются необходимость замены всего исполняемого модуля при изменении внедренных данных и увеличение размера исполняемого модуля из-за дополнительного расхода памяти под внедренные данные.

Ресурсная система Qt обладает дополнительными возможностями, которые не представлены в этом примере, включая поддержку псевдонимов файлов и локализацию. Информацию по этим возможностям можно найти на веб-странице http://doc.trolltech.com/4.1/resources.html

Связь между процессами

Класс QProcess позволяет выполнять внешние программы и взаимодействовать с ними. Этот класс работает асинхронно и в фоновом режиме, из-за чего интерфейс пользователя по-прежнему будет реагировать на действия пользователя. QProcess посылает сигналы, уведомляющие нас о получении данных или о завершении работы.

Мы кратко рассмотрим программный код небольшого приложения, обеспечивающего интерфейс пользователя для внешней программы преобразования изображений. В нашем случае мы используем программу convert из пакета программ ImageMagick, который свободно распространяется на всех основных платформах.

Рис 122 Приложение Image Converter Интерфейс пользователя приложения Image - фото 143

Рис. 12.2. Приложение Image Converter.

Интерфейс пользователя приложения Image Converter (конвертор изображений) был создан при помощи Qt Designer. Файл .ui находится на компакт-диске, который входит в состав данной книги. Здесь мы основное внимание уделим подклассу, который является наследником сгенерированного компилятором uic класса Ui::ConvertDialog, и начнем с заголовочного файла:

01 #ifndef CONVERTDIALOG_H

02 #define CONVERTDIALOG_H

03 #include

04 #include

05 #include "ui_convertdialog.h"

06 class ConvertDialog : public QDialog,

07 public Ui::ConvertDialog

08 {

09 Q_OBJECT

10 public:

11 ConvertDialog(QWidget *parent = 0);

12 private slots:

13 void on_browseButton_clicked();

14 void on_convertButton_clicked();

15 void updateOutputTextEdit();

16 void processFinished(int exitCode, QProcess::ExitStatus exitStatus);

17 void processError(QProcess::ProcessError error);

18 private:

19 QProcess process;

20 QString targetFile;

21 };

22 #endif

Этот заголовочный файл создается по тому знакомому образцу, который используется в подклассах форм Qt Designer. Благодаря механизму автоматического связывания QtDesigner слоты on_browseButton_clicked() и on_convertButton_clicked() автоматически связываются с сигналом clicked() кнопок Browse (просмотреть) и Convert (преобразовать).

01 ConvertDialog::ConvertDialog(QWidget *parent)

02 : QDialog(parent)

03 {

04 setupUi(this);

05 connect(&process, SIGNAL(readyReadStandardError()),

06 this, SLOT(updateOutputTextEdit()));

07 connect(&process, SIGNAL(finished(int, QProcess::ExitStatus)),

08 this, SLOT(processFinished(int, QProcess::ExitStatus)));

09 connect(&process, SIGNAL(error(QProcess::ProcessError)),

10 this, SLOT(processError(QProcess::ProcessError)));

11 }

Вызов setupUi() создает и компонует все виджеты форм, устанавливает соединения сигнал—слот для слотов on_objectName_signalName() и связывает кнопку Quit (выйти) с функцией QDialog::accept(). После этого мы вручную связываем три сигнала объекта QProcess с тремя закрытыми слотами. Любые сообщения внешнего процесса для потока cerr мы будем обрабатывать в функции updateOutputTextEdit().

01 void ConvertDialog::on_browseButton_clicked()

02 {

03 QString initialName = sourceFileEdit->text();

04 if (initialName.isEmpty())

05 initialName = QDir::homePath();

06 QString fileName = QFileDialog::getOpenFileName(this,

07 tr("Choose File"), initialName);

08 fileName = QDir::convertSeparators(fileName);

09 if (!fileName.isEmpty()) {

10 sourceFileEdit->setText(fileName);

11 convertButton->setEnabled(true);

12 }

13 }

Сигнал clicked() кнопки Browse (просмотреть) автоматически связывается в функции setupUi() со слотом on_browseButton_clicked(). Если пользователь ранее выбирал какой-нибудь файл, мы инициализируем диалоговое окно выбора файла именем этого файла; в противном случае мы используем домашний каталог пользователя.

01 void ConvertDialog::on_convertButton_clicked()

02 {

03 QString sourceFile = sourceFileEdit->text();

04 targetFile = QFileInfo(sourceFile).path()

05 + QDir::separator() + QFileInfo(sourceFile).baseName()

06 + "." + targetFormatComboBox->currentText().toLower();

07 convertButton->setEnabled(false);

08 outputTextEdit->clear();

09 QStringList args;

10 if (enhanceCheckBox->isChecked())

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Похожие книги на «QT 4: программирование GUI на С++»

Представляем Вашему вниманию похожие книги на «QT 4: программирование GUI на С++» списком для выбора. Мы отобрали схожую по названию и смыслу литературу в надежде предоставить читателям больше вариантов отыскать новые, интересные, ещё непрочитанные произведения.


Бертрис Смолл - Дикарка Жасмин
Бертрис Смолл
Георгий Семенов - Жасмин в тени забора
Георгий Семенов
Жасмин Гиллори - Свадебное свидание
Жасмин Гиллори
Жасмин Майер - Онлайн
Жасмин Майер
Отзывы о книге «QT 4: программирование GUI на С++»

Обсуждение, отзывы о книге «QT 4: программирование GUI на С++» и просто собственные мнения читателей. Оставьте ваши комментарии, напишите, что Вы думаете о произведении, его смысле или главных героях. Укажите что конкретно понравилось, а что нет, и почему Вы так считаете.

x