Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
NIRS9_Tereschenko_v3.docx
Скачиваний:
25
Добавлен:
04.06.2015
Размер:
2.05 Mб
Скачать
  1. Структура программыNirs9

Весь функционал расположен в классе MainWindowс отделением описания от реализации. Все содержащиеся в классе методы (за исключением конструкторов и деструктора) представляют собой обработчики событий, поступающих от элементов управления пользовательского интерфейса. Исходный код библиотеки представлен в проектеQtCreator, состоящем из нескольких файлов:

  • NIRS9.pro– файл проектаQt. Содержит данные о включаемых в проект файлах и информацию для сборки.

  • imgpreprocessing.h – файл заголовка C++. Содержит определение класса из подключенной библиотеки.

  • ImgPreProcessing_global.h – файл заголовка C++. Содержит макросы для импорта/экспорта класса из подключенной библиотеки.

  • mainwindow.h– файл заголовкаC++. Содержит определение класса.

  • main.cpp– файл исходниковC++.Cодержит точку входа в приложение и отвечает за его непосредственный запуск.

  • mainwindow.cpp– файл исходниковC++. Содержит реализацию методов класса.

  • mainwindow.ui– файл графического интерфейсаQt. СодержитXML-описание главного окна программы.

Рисунок 39. Файловая структура проекта NIRS9.

Результатом сборки проекта является исполняемый файл с расширением .exe. Открытие файла запускает программу.

Определение класса MainWindow:

Подключение заголовка главного окна Qt

#include <QMainWindow>

Подключение заголовочного файла библиотеки ImgPreProcessing

#include <imgpreprocessing.h>

class MainWindow : public QMainWindow

{

Q_OBJECT

Доступные члены класса: конструктор и деструктор

public:

explicit MainWindow(QWidget *parent = 0);

~MainWindow();

Защищенные члены класса: обработчики событий

private slots:

Обработчик события нажатия кнопки “Открыть”

void on_openButton_clicked();

Обработчик события нажатия кнопки “Gauss”

void on_gaussButton_clicked();

Обработчик события нажатия кнопки “Сохранить”

void on_saveButton_clicked();

Обработчик события нажатия кнопки “Blur”

void on_blurButton_clicked();

Обработчик события нажатия кнопки “Median”

void on_medianButton_clicked();

Обработчик события нажатия кнопки “Контраст”

void on_contrastButton_clicked();

Обработчик события нажатия кнопки “Яркость”

void on_brightButton_clicked();

Обработчик события движения ползунка для изменения яркости

void on_brightSlider_sliderMoved(int position);

Обработчик события нажатия кнопки “Dilation”

void on_dilationButton_clicked();

Обработчик события нажатия кнопки “Erosion”

void on_erosionButton_clicked();

Обработчик события нажатия кнопки “mOpening”

void on_mathOpenButton_clicked();

Обработчик события нажатия кнопки “mClosing”

void on_mathCloseButton_clicked();

Обработчик события движения ползунка для изменения компоненты Red

void on_rSlider_sliderMoved(int position);

Обработчик события движения ползунка для изменения компоненты Green

void on_gSlider_sliderMoved(int position);

Обработчик события движения ползунка для изменения компоненты Blue

void on_bSlider_sliderMoved(int position);

Обработчик события нажатия кнопки “Rchange”

void on_rButton_clicked();

Обработчик события нажатия кнопки “Gchange”

void on_gButton_clicked();

Обработчик события нажатия кнопки “Bchange”

void on_bButton_clicked();

Обработчик события движения ползунка для увеличения контраста

void on_increaseContrastSlider_sliderMoved(int position);

Обработчик события движения ползунка для уменьшения контраста

void on_reduceContrastSlider_sliderMoved(int position);

Обработчик события нажатия кнопки “Hchange”

void on_hButton_clicked();

Обработчик события движения ползунка для изменения компоненты Hue

void on_hSlider_sliderMoved(int position);

Обработчик события нажатия кнопки “Sharpen”

void on_sharpenButton_clicked();

Защищенные члены класса: поля

private:

Главное окно

Ui::MainWindow *ui;

Объект класса ImgPreProcessing

ImgPreProcessing *image; };

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]