Перейти к содержанию

Модуль графического интерфейса: различия между версиями

Материал из Химсофт Вики
 
(не показано 9 промежуточных версий этого же участника)
Строка 136: Строка 136:
</syntaxhighlight>
</syntaxhighlight>


==Класс InputCombo==
==Класс <code>InputCombo</code>==


Класс InputCombo
Нужен для: наследует <code>InputElement</code>.
Нужен для Наследует InputElement.


selectedIndex
===<code>selectedIndex</code>===
Порядковый номер выбранного элемента из выпадающего списка
Порядковый номер выбранного элемента из выпадающего списка


<syntaxhighlight lang="javascript">
selectedIndex: number | null
</syntaxhighlight>


selectedIndex: number | null
===<code>addValues()</code>===
addValues()
Добавление элементов в выпадающий список
Добавление элементов в выпадающий список


values: Array<number | boolean | string | Date> Массив элементов (элементы преобразуются в строку после установки)
<code>values: Array<number | boolean | string | Date></code> Массив элементов (элементы преобразуются в строку после установки)


<syntaxhighlight lang="javascript">
addValues(values: Array<number | boolean | string | Date>): void;
</syntaxhighlight>


addValues(values: Array<number | boolean | string | Date>): void;
===<code>clear()</code>===
clear()
Очистка содержимого выпадающего списка
Очистка содержимого выпадающего списка


 
<syntaxhighlight lang="javascript">
clear(): void;
clear(): void;
</syntaxhighlight>


==Функция openFile()==
==Функция <code>openFile()</code>==


Выводит диалог выбора файла (единичного) для открытия
Выводит диалог выбора файла (единичного) для открытия


defaultDirectory: string | null Директория по умолчанию
<code>defaultDirectory: string | null</code> Директория по умолчанию


filters: string Фильтры для списка файлов пример: Изображения (*.png *.xpm *.jpg);;Текстовые файлы (*.txt)
<code>filters: string</code> Фильтры для списка файлов  


return: string | null Путь к выбранному файлу
Пример: <code>Изображения (*.png *.xpm *.jpg);;Текстовые файлы (*.txt)</code>


<code>return: string | null</code> Путь к выбранному файлу
<syntaxhighlight lang="javascript">
function openFile(defaultDirectory: string | null, filters?: string): string | null;
function openFile(defaultDirectory: string | null, filters?: string): string | null;
</syntaxhighlight>


==Функция openFiles()==
==Функция <code>openFiles()</code>==


Выводит диалог выбора файлов для открытия
Выводит диалог выбора файлов для открытия


defaultDirectory: string | null Директория по умолчанию
<code>defaultDirectory: string | null</code> Директория по умолчанию
 
<code>filters: string</code> Фильтры для списка файлов


filters: string Фильтры для списка файлов пример: Изображения (*.png *.xpm *.jpg);;Текстовые файлы (*.txt)
Пример: <code>Изображения (*.png *.xpm *.jpg);;Текстовые файлы (*.txt)</code>


return: string[] | null Путь к выбранному файлу
<code>return: string[] | null</code> Путь к выбранному файлу


<syntaxhighlight lang="javascript">
function openFiles(defaultDirectory: string | null, filters?: string): string[] | null;
function openFiles(defaultDirectory: string | null, filters?: string): string[] | null;
</syntaxhighlight>


==Функция saveFile()==
==Функция <code>saveFile()</code>==


Выводит диалог выбора пути к сохраняемому файлу
Выводит диалог выбора пути к сохраняемому файлу


defaultDirectory: string | null Директория по умолчанию
<code>defaultDirectory: string | null</code> Директория по умолчанию
 
<code>filters: string</code> Фильтры для списка файлов


filters: string Фильтры для списка файлов пример: Изображения (*.png *.xpm *.jpg);;Текстовые файлы (*.txt)
Пример: <code>Изображения (*.png *.xpm *.jpg);;Текстовые файлы (*.txt)</code>


return: string[] | null Путь к сохраняемому файлу
<code>return: string[] | null</code> Путь к сохраняемому файлу


<syntaxhighlight lang="javascript">
function saveFile(defaultDirectory: string | null, filters?: string): string | null;
function saveFile(defaultDirectory: string | null, filters?: string): string | null;
</syntaxhighlight>


==Функция showPopup()==
==Функция <code>showPopup()</code>==


Выводит всплывающее уведомление в нижней правой части экрана
Выводит всплывающее уведомление в нижней правой части экрана


content: any Данные для вывода в всплывающем сообщении
<code>content: any</code> Данные для вывода во всплывающем сообщении


options: PopupOptions Параметры всплывающего сообщения
<code>options: PopupOptions</code> Параметры всплывающего сообщения


<syntaxhighlight lang="javascript">
function showPopup(content: any, options?: PopupOptions): void;
</syntaxhighlight>


function showPopup(content: any, options?: PopupOptions): void;
===Параметры для всплывающих окон===
Параметры для всплывающих окон


<syntaxhighlight lang="javascript">
interface PopupOptions {
interface PopupOptions {
   isAutoHide: boolean; // Скрывать ли окно автоматически
   isAutoHide: boolean; // Скрывать ли окно автоматически
}
}
</syntaxhighlight>


==Функция createSplashWindow()==
==Функция <code>createSplashWindow()</code>==


Создает окно с индикатором загрузки
Создает окно с индикатором загрузки
Строка 217: Строка 237:
Доступно только при наличии splash.exe
Доступно только при наличии splash.exe


text: string Подпись к индикатору
<code>text: string</code> Подпись к индикатору


return: SplashWindow
<code>return: SplashWindow</code>


<syntaxhighlight lang="javascript">
function createSplashWindow(text?: string): SplashWindow;
</syntaxhighlight>


function createSplashWindow(text?: string): SplashWindow;
===Интерфейс загрузочного экрана===
Интерфейс загрузочного экрана


<syntaxhighlight lang="javascript">
interface SplashWindow {
interface SplashWindow {
   close: () => void;
   close: () => void;
}
}
</syntaxhighlight>


==Пространство имен MessageBox==
==Пространство имен <code>MessageBox</code>==


Внутри пространства имен содержится функция показа диалогового окна и его параметры для настройки.
Внутри пространства имен содержится функция показа диалогового окна и его параметры для настройки.


Функция show()
===<code>Функция show()</code>===
text: string текст сообщения title: string заголовок окна flags: Buttons | Icons | Utils запись через битовую операцию или |
<code>text: string</code> текст сообщения <code>title: string</code> заголовок окна <code>flags: Buttons | Icons | Utils</code> запись через битовую операцию или <code>|</code>


<syntaxhighlight lang="javascript">
function show(text: string, title?: string, flags?: Buttons | Icons): Results;
</syntaxhighlight>


function show(text: string, title?: string, flags?: Buttons | Icons): Results;
===Возможные результаты===
Возможные результаты
<code>Results.ABORT</code> Прервать
Results.ABORT Прервать


Results.CANCEL Отмена
<code>Results.CANCEL</code> Отмена


Results.CONTINUE Продолжить
<code>Results.CONTINUE</code> Продолжить


Results.IGNORE Игнорировать
<code>Results.IGNORE</code> Игнорировать


Results.YES Да
<code>Results.YES</code> Да


Results.NO Нет
<code>Results.NO</code> Нет


Results.OK Ок
<code>Results.OK</code> Ок


Results.RETRY Повтор
<code>Results.RETRY</code> Повтор


Results.TRYAGAIN Повторить
<code>Results.TRYAGAIN</code> Повторить


Настройка кнопок
===Настройка кнопок===
Buttons.ABORT_RETRY_IGNORE Прервать, повтор, пропустить
<code>Buttons.ABORT_RETRY_IGNORE</code> Прервать, повтор, пропустить


Buttons.CANCEL_TRY_CONTINUE Отмена, повторить, продолжить
<code>Buttons.CANCEL_TRY_CONTINUE</code> Отмена, повторить, продолжить


Buttons.OK Ок
<code>Buttons.OK</code> Ок


Buttons.OK_CANCEL Ок, отмена
<code>Buttons.OK_CANCEL</code> Ок, отмена


Buttons.RETRY_CANCEL Повтор, отмена
<code>Buttons.RETRY_CANCEL</code> Повтор, отмена


Buttons.YES_NO Да, нет
<code>Buttons.YES_NO</code> Да, нет


Настройка иконок
===Настройка иконок===
Icons.ERROR Ошибка
<code>Icons.ERROR</code> Ошибка


Icons.QUESTION Вопрос
<code>Icons.QUESTION</code> Вопрос


Icons.WARNING Предупреждение
<code>Icons.WARNING</code> Предупреждение


Icons.INFO Информация
<code>Icons.INFO</code> Информация


Дополнительные настройки
===Дополнительные настройки===
Utils.ALWAYS_ON_TOP Принудительный вывод окна сообщения на переднем плане
<code>Utils.ALWAYS_ON_TOP</code> Принудительный вывод окна сообщения на переднем плане

Текущая версия от 01:42, 14 января 2026

Модуль предназначен для создания и вызова разного рода диалоговых окон. Модуль построен на основе библиотеки Qt.

Типы текстовых полей InputType

InputType.STRING - строковое поле ввода;

InputType.DATE - поле для ввода даты;

InputType.TIME - поле для ввода времени;

InputType.DATE_TIME - поле для ввода даты и времени;

InputType.DOUBLE - поле для ввода вещественного числа;

InputType.BOOLEAN - поле для ввода логического значения;

InputType.INT - поле для ввода целочисленного значения.

Цвета текстовых полей ChemicColors

ChemicColors.INPUT_REQUIRED - поле ввода, обязательное для заполнения (желтое).

Класс InputDialog

Класс предназначенный для конструирования произвольных диалогов ввода информации.

makeInput()

Создание однострочного поля ввода с указанным типом.

type: InputType - тип поля ввода;

return: InputElement - созданный элемент ввода.

makeInput(type: InputType): InputElement;

makeCombo()

Создание поля ввода в виде выпадающего списка.

return: InputCombo - созданный элемент выпадающего списка.

makeCombo(): InputCombo;

setTitle()

Установка заголовка окна диалога.

title: string - заголовок окна.

setTitle(title: string): void;

setBackground()

Установка цвета фона диалога.

color: string HEX - код цвета или его название.

setBackground(color: string): void;

setMinimumWidth()

Установка минимальной ширина диалога.

width: number - ширина в пикселях.

setMinimumWidth(width: number): void;

setMinimumHeight()

Установка минимальной высоты диалога.

height: number - высота в пикселях.

setMinimumHeight(height: number): void;

on()

Установка обработчика события.

event: string - имя события;

handler: function - функция, вызываемая для обработки события.

on(event: 'confirm', handler: () => boolean): void;

show()

Вызывает сформированный диалог и возвращает результат.

return: boolean - результат действий пользователя (true - если пользователь нажал ОК, false - в любой другой ситуации).

show(): boolean;

Класс InputElement

label

Наименование поля, отображается слева.

label: string;

isReadOnly

Флаг - поле только для чтения.

isReadOnly: boolean;

value

Текущее значение поля ввода.

value: null | number | boolean | string | Date;

on()

Установка обработчика события.

event: string - имя события;

handler: function - функция, вызываемая для обработки события.

on(event: 'change', handler: (value: null | number | boolean | string | Date) => void): void;

setBackground()

Установка цвета фона элемента ввода.

color: string - HEX код цвета или его название.

setBackground(color: string): void;

Класс InputCombo

Нужен для: наследует InputElement.

selectedIndex

Порядковый номер выбранного элемента из выпадающего списка

selectedIndex: number | null

addValues()

Добавление элементов в выпадающий список

values: Array<number | boolean | string | Date> Массив элементов (элементы преобразуются в строку после установки)

addValues(values: Array<number | boolean | string | Date>): void;

clear()

Очистка содержимого выпадающего списка

clear(): void;

Функция openFile()

Выводит диалог выбора файла (единичного) для открытия

defaultDirectory: string | null Директория по умолчанию

filters: string Фильтры для списка файлов

Пример: Изображения (*.png *.xpm *.jpg);;Текстовые файлы (*.txt)

return: string | null Путь к выбранному файлу

function openFile(defaultDirectory: string | null, filters?: string): string | null;

Функция openFiles()

Выводит диалог выбора файлов для открытия

defaultDirectory: string | null Директория по умолчанию

filters: string Фильтры для списка файлов

Пример: Изображения (*.png *.xpm *.jpg);;Текстовые файлы (*.txt)

return: string[] | null Путь к выбранному файлу

function openFiles(defaultDirectory: string | null, filters?: string): string[] | null;

Функция saveFile()

Выводит диалог выбора пути к сохраняемому файлу

defaultDirectory: string | null Директория по умолчанию

filters: string Фильтры для списка файлов

Пример: Изображения (*.png *.xpm *.jpg);;Текстовые файлы (*.txt)

return: string[] | null Путь к сохраняемому файлу

function saveFile(defaultDirectory: string | null, filters?: string): string | null;

Функция showPopup()

Выводит всплывающее уведомление в нижней правой части экрана

content: any Данные для вывода во всплывающем сообщении

options: PopupOptions Параметры всплывающего сообщения

function showPopup(content: any, options?: PopupOptions): void;

Параметры для всплывающих окон

interface PopupOptions {
  isAutoHide: boolean; // Скрывать ли окно автоматически
}

Функция createSplashWindow()

Создает окно с индикатором загрузки

Доступно только при наличии splash.exe

text: string Подпись к индикатору

return: SplashWindow

function createSplashWindow(text?: string): SplashWindow;

Интерфейс загрузочного экрана

interface SplashWindow {
  close: () => void;
}

Пространство имен MessageBox

Внутри пространства имен содержится функция показа диалогового окна и его параметры для настройки.

Функция show()

text: string текст сообщения title: string заголовок окна flags: Buttons | Icons | Utils запись через битовую операцию или |

function show(text: string, title?: string, flags?: Buttons | Icons): Results;

Возможные результаты

Results.ABORT Прервать

Results.CANCEL Отмена

Results.CONTINUE Продолжить

Results.IGNORE Игнорировать

Results.YES Да

Results.NO Нет

Results.OK Ок

Results.RETRY Повтор

Results.TRYAGAIN Повторить

Настройка кнопок

Buttons.ABORT_RETRY_IGNORE Прервать, повтор, пропустить

Buttons.CANCEL_TRY_CONTINUE Отмена, повторить, продолжить

Buttons.OK Ок

Buttons.OK_CANCEL Ок, отмена

Buttons.RETRY_CANCEL Повтор, отмена

Buttons.YES_NO Да, нет

Настройка иконок

Icons.ERROR Ошибка

Icons.QUESTION Вопрос

Icons.WARNING Предупреждение

Icons.INFO Информация

Дополнительные настройки

Utils.ALWAYS_ON_TOP Принудительный вывод окна сообщения на переднем плане