Изменения

Перейти к навигации Перейти к поиску

Изменение визуальных форм

22 948 байт добавлено, 11:25, 15 мая 2023
Для элемента "AlphaKeyboard"
{{Содержание справа}}__TOC__  
= Общие сведения =
 {{Внимание|Некоторые функции поддерживаются не во всех версия программного обеспечения. Для поддержки всех функций необходимо обновить прошивку весов до последней версии.}}  В программном обеспечении весового комплекса возможно изменение практически всех визуальных форм отображаемых на экране. Данная процедура может понадобиться, например, для изменения стандартных цветов на фирменные цвета или для добавления логотипа, а так же для изменения функционала и поведения весов.
|Форма для вывода информации при ожидании отложенного сохранения данных.
|
|-
|59
|Форма при печати, необходимо подтверждение печати
|Используется при голосовом управлении для подтверждения печати голосовой командой
|}
! colspan="4" |'''Название тега'''
|'''Описание'''
|'''Возможные "Type" для "Item"'''
|'''Примечание'''
|-
|<Form><Item> 
|
|
|
|
|
|
|StyleSheet
|
|
|
|
|BackgroundPicture
|
|
|
|
|Item
|
|Group, Goods, Back, Forward, Empty, AlphaKeyboard, Keyboard, AlphaInputString, InputString
|Goods
|-
|
|Item
| 
|Number, BarCode, DisplayNumber, Name, Price, DiscountPrice, Total, Weight, Picture, SecondPicture, Action, Message, BackgroundText, BackgroundPicture. MiddlePicture
|-
|
|
|
|StyleSheet  
|
|-
|ExtParams
|
|
|
|
|
|-
|
|-
|
|-
|
|
|-
|
|-
|
|
|-
|ExtParams 
|
|
|-
|
|StyleSheet
|
|
|
|Item 
|
|
|
|StyleSheet
|
|
|-
|PriceTare
|
|
|
|-
|TotalPrice
|
|
|StyleSheet
|
|
|-
|ModeMessageTotal
|Для режима фасовки
|-
|StyleSheet
|
|
|-
|StateMessageModeMessage
|
|Для режима фасовки
|
|-
|InfoMessageStateMessage
|
|Для режима фасовки
|
|StyleSheet
|
|
|-
|InfoMessage
|
|Для режима фасовки
|-
|
|StyleSheet
|
|
|
|Только для экрана загрузки
|
|Только для экрана загрузки
|
|Только для экрана загрузки
|
|
|StyleSheet
|Тег описывающий визуальное представление элемента. Цвета, шрифт и т.д.
|Для задания используется тип CDATA. Например: <source lang=html><StyleSheet> <![CDATA[border-left: 3px; border-style: solid; border-left-color: black; ]]> </StyleSheet> </source>
|-
|ExtParams 
|Содержимое элемента задается в формате JSON.
Для элемента "InputString": "empty-text" : "текст при отсутствии введенного номера" и "empty-text-style-sheet" : "стиль текста при отсутствии введенного номера"
 Для текстов, кнопок, картинок: "autohide-xxx" : "true/false" и "autoshow-xxx" : "true/false" Например: <source lang=html><ExtParams> <![CDATA[ { "smooth-transformation" : "true", "keep-aspect-ratio" : "true" } ]]> </ExtParams> </source>
|}
= Типы кнопок (Buttons) =
Если аттрибут атрибут "Type" элемента из группы "Buttons" равен указанному в таблице значению, то элемент приобретает соответствующие возможности.
{| class="wikitable"
|NameGroups
|Переход на экран с группами товаров.
|-
|ExtraGroups
|Переход на экран с группами товаров (отличный от главного).
|-
|-
|ForwardGoodsPage
|Переход на слудующую следующую страницу товаров в пределах одной группы.
|-
|Показать форму обратной связи (тип формы = 55).
|-|ClearInputString|Очистить набранный номер товара при поиске.|-|ClearAlphaInputString|Очистить набранное название товара при поиске.|-|TareWeight|Выполнить тарирование веса..|-|ZeroWeight|Выполнить обнуление веса.|-|ExtraGroups|Показать дополнительный экран с группами.|-|StartImageRecognition|Запустить ручное распознавание товара нейронной сетью.|} = Типы текстовых полей (StaticText) =
= Расширенное управление элементами с помощью "'''ExtParams'''"=
== Для элемента "InputString" и "AlphaInputString" ==
{| class="wikitable"
! Имя тега !! Тип данных !! Описание !! Используется в алгоритмах
|-
| empty-text || string || Строка выводимая, когда не введен номер товара || А11, А12, А13, А14, A21|-| empty-text-style-sheet || string || Стиль строки ввода, когда не введен номер товара || А11, А12, А13, А14, A21|-| to-upper || string || Выводить все символы в ВЕРХНЕМ регистре || А11, А12, А13, А14, A21|-| to-lower || string || Выводить все символы в нижнем регистре || А11, А12, А13, А14, A21|-| autohide || bool|| Автоскрывать при невыбранном товаре || |-| autoshow|| bool|| Автопоказывать при невыбранном товаре ||
|-
| emptyautohide-textalphasearch || bool|| Скрывать при поиске по алфавиту || |-| autoshow-alphasearch || bool|| Выводить при поиске по алфавиту || |-| weight-is-stable || bool|| Выводить при стабильном весе || |-| weight-is-not-stable || bool|| Выводить при не стабильном весе || |-| weight-is-zero || bool|| Выводить при нулевом весе || |-| weight-is-stylenot-sheet zero || bool|| Выводить при не нулевом весе || |-| number-prefix || string || Стиль строки ввода, когда не введен номер товара Выводить перед введенным значением || |-| number-suffix || string || Выводить после введенным значением || А11, А12, А13, А14
|}
|
|-
| spacing || integer || Растояние Расстояние между кнопок по вертикали и горизонтали ||
|-
| v-spacing || integer || Растояние Расстояние между кнопок по вертикали ||
|-
| h-spacing || integer || Растояние Расстояние между кнопок по горизонтали ||
|-
| name || string || Задание имени поля клавиатуры. Используется для возможности изменения цветов и стиля через StyleSheet.
В StyleSheet необходимо задавать объект: QWidget#'''name''' { background:transparent; }
|
|}
 
== Для элемента "PackingKeyboard" ==
 
{| class="wikitable"
|-
! Имя тега !! Тип данных !! Описание !! Используется в алгоритмах| autohide || bool|| Автоскрывать при невыбранном товаре ||
|-
| keyboardautoshow|| bool|| Автопоказывать при невыбранном товаре || |-| autohide-map alphasearch || string bool|| Скрывать при поиске по алфавиту ||
|-
| contentsautoshow-margins alphasearch || integer array bool|| 4 числа для задания расстояния от границ. Слева - Сверху - Справа - Снизу.Например: [3, 5, 3, 5] Выводить при поиске по алфавиту ||
|-
| spacing weight-is-stable || integer bool|| Растояние между кнопок по вертикали и горизонтали Выводить при стабильном весе ||
|-
| vweight-spacing is-not-stable || integer bool|| Растояние между кнопок по вертикали Выводить при не стабильном весе ||
|-
| hweight-spacing is-zero || integer bool|| Растояние между кнопок по горизонтали Выводить при нулевом весе ||
|-
| name weight-is-not-zero || string bool|| Выводить при не нулевом весе || Задание имени поля клавиатуры. Используется для возможности изменения цветов и стиля через StyleSheet.В StyleSheet необходимо задавать объект: QWidget#'''name''' { background:transparent; }
|
|}
== Для элемента "GroupsAlphaKeyboard" == Элементов "AlphaKeyboard" может быть несколько. Для каждого языка ввода создается отдельный элемент.
{| class="wikitable"
! Имя тега !! Тип данных !! Описание !! Используется в алгоритмах
|-
| dontkeyboard-show-empty-group-button || bool|| Не показывать пустые кнопки групп, если групп меньше чем места в ряду кнопок || |-| hide-current-group-button || bool|| Скрывать кнопку текущей группы, при выводе кнопок групп на форме товаров || |-| autohide || bool|| Автоскрывать при невыбранном товаре || |-| autoshowmap || boolstring || Автопоказывать при невыбранном товаре ||
|-
| contents-margins || integer array || 4 числа для задания расстояния от границ.
|
|-
| v-spacing || intinteger || Расстояние между кнопок по вертикали между кнопками и горизонтали ||
|-
| hv-spacing || intinteger || Расстояние между кнопок по горизонтали между кнопками || вертикали |} == Для элемента "Goods" == {| class="wikitable"
|-
! Имя тега !! Тип данных !! Описание !! Используется в алгоритмах| h-spacing || integer || Расстояние между кнопок по горизонтали ||
|-
| contents-margins name || integer array string || 4 числа Задание имени поля клавиатуры. Используется для задания расстояния от границвозможности изменения цветов и стиля через StyleSheet. Слева - Сверху - Справа - Снизу.НапримерВ StyleSheet необходимо задавать объект: QWidget#'''name''' { background: [3, 5, 3, 5] |transparent; }
|-
| vautohide || bool|| Автоскрывать при невыбранном товаре || |-| autoshow || bool|| Автопоказывать при невыбранном товаре || |-| autohide-alphasearch || bool|| Скрывать при поиске по алфавиту || |-| autoshow-spacing alphasearch || intbool|| Расстояние Выводить при поиске по вертикали между кнопками алфавиту || |-| weight-is-stable || bool|| Выводить при стабильном весе || |-| weight-is-not-stable || bool|| Выводить при не стабильном весе ||
|-
| hweight-spacing || intis-zero || Расстояние по горизонтали между кнопками bool|| Выводить при нулевом весе |} == Для элемента "Goods/Name" == {| class="wikitable"
|-
! Имя тега !! Тип данных !! Описание !! Используется в алгоритмах| weight-is-not-zero || bool|| Выводить при не нулевом весе ||
|-
| replacesearch-to anywhere || int bool || На что меняется название товара, если нет картинки и разрешена ее замена на название товараИскать в любом месте любого слова наименования.0 - номер товара, 1 - код магазина, 2 - доп номера товара || |}По умолчанию поиск по началу слов.
Данная опция имеет приоритет над другими опциями поиска.
== Для элемента "Picture", "SecondPicture" ==Поддерживается начиная со сборок 4320. {| class="wikitable"|
|-
! Имя тега !! Тип данных !! Описание !! Используется в алгоритмах| search-only-first-word || bool || Искать при поиске по первому слову наименования товара или по любому.По умолчанию поиск по началу любого слова ||
|-
| smoothmax-transformation enter-count || bool int || Режим масштабирования Ограничение вводимого количества символов || Если текст есть, он заменяет генерируемое системой значение в коде
|-
| keepautohide-aspect-ratio numbersearch || bool || Соблюдение пропорций Автоматически скрывать при масштабировании поиске по номеру || Если текст есть, он заменяет генерируемое системой значение в коде||
|}
== Для элемента "StaticTextPackingKeyboard" ==
{| class="wikitable"
! Имя тега !! Тип данных !! Описание !! Используется в алгоритмах
|-
| autohide keyboard-map || boolstring || Автоскрывать при невыбранном товаре ||
|-
| autoshowcontents-margins || boolinteger array || Автопоказывать при невыбранном товаре |4 числа для задания расстояния от границ. Слева - Сверху - Справа - Снизу.Например: [3, 5, 3, 5] |
|-
| lowerspacing || boolinteger || Разместить текст внизу под другими элементами Расстояние между кнопок по вертикали и горизонтали || |}-| v-spacing || integer || Расстояние между кнопок по вертикали || == Для элемента "Pictures" ==|- {| class="wikitable"h-spacing || integer || Расстояние между кнопок по горизонтали ||
|-
! Имя тега !! Тип данных !! Описание !! | name || string || Задание имени поля клавиатуры. Используется в алгоритмахдля возможности изменения цветов и стиля через StyleSheet.В StyleSheet необходимо задавать объект: QWidget#'''name''' { background:transparent; }
|-
| autohide || bool|| Автоскрывать при невыбранном товаре ||
| autoshow|| bool|| Автопоказывать при невыбранном товаре ||
|-
| smoothautohide-transformation alphasearch || bool || Режим масштабирования Скрывать при поиске по алфавиту || |-| autoshow-alphasearch || bool|| Выводить при поиске по алфавиту || Если текст есть, он заменяет генерируемое системой значение в коде
|-
| keepweight-aspectis-ratio stable || bool || Соблюдение пропорций Выводить при масштабировании стабильном весе || Если текст есть, он заменяет генерируемое системой значение в коде
|-
| movieweight-is-not-stable || bool|| Анимированная картинка (gif) Выводить при не стабильном весе || |} == Для элемента "Progress" == {| class="wikitable"
|-
! Имя тега !! Тип данных !! Описание !! Используется в алгоритмах| weight-is-zero || bool|| Выводить при нулевом весе ||
|-
| showtextweight-is-not-zero || bool|| Выводить при не нулевом весе || |
|}
== Для элемента "PopularGoodsGroups" ==
{| class="wikitable"
! Имя тега !! Тип данных !! Описание !! Используется в алгоритмах
|-
| enabledont-buttonsshow-empty-group-button || bool|| || Не показывать пустые кнопки групп, если групп меньше чем места в ряду кнопок |} == Для элемента "QRCode" == {| class="wikitable"
|-
! Имя тега !! Тип данных !! Описание !! Используется в алгоритмах| hide-current-group-button || bool|| Скрывать кнопку текущей группы, при выводе кнопок групп на форме товаров ||
|-
| prescaler autohide || int bool|| Количество пикселей на бит полученного кода Автоскрывать при невыбранном товаре || |-| autoshow|| bool|| Автопоказывать при невыбранном товаре || |-| autohide-alphasearch || bool|| Скрывать при поиске по алфавиту || |-| autoshow-alphasearch || bool|| Выводить при поиске по алфавиту || |-| weight-is-stable || bool|| Выводить при стабильном весе || |-| weight-is-not-stable || bool|| Выводить при не стабильном весе || По умолчанию 1
|-
| errorweight-correction is-zero || int bool|| Уровень коррекции ошибок Выводить при нулевом весе || От 0 (lowest) до 3 (highest). По умолчанию 1. Level L (Low): up to 7% damage. Level M (Medium): up to 15% damage. Level Q (Quartile):up to 25% damage. Level H (High): up to 30% damage.
|-
| smoothweight-transformation is-not-zero || bool || Режим масштабирования Выводить при не нулевом весе || Если текст есть, он заменяет генерируемое системой значение в коде
|-
| keepcontents-aspect-ratio margins || bool integer array || Соблюдение пропорций при масштабировании |4 числа для задания расстояния от границ. Слева - Сверху - Справа - Снизу.Например: [3, 5, 3, 5] | Если текст есть, он заменяет генерируемое системой значение в коде
|-
| encodev-mode spacing || int || Режим кодирования информации в коде Расстояние по вертикали между кнопками || От 0 до 7
|-
| text h-spacing || string int|| Текст для кодирования в коде Расстояние по горизонтали между кнопками || Если текст есть, он заменяет генерируемое системой значение в коде.|}
Шаблоны используемые при формировании текста:== Для элемента "Goods" ==
:{%sn%} | class="wikitable"|-! Имя тега !! Тип данных !! Описание !! Используется в алгоритмах|-| contents-margins || integer array || 4 числа для задания расстояния от границ. Слева - Сверху - Справа - заводской номер весовСнизу.Например: [3, 5, 3, 5] ||-| v-spacing || int|| Расстояние по вертикали между кнопками || |-| h-spacing || int|| Расстояние по горизонтали между кнопками || |-| autohide || bool|| Автоскрывать при невыбранном товаре || |-| autoshow|| bool|| Автопоказывать при невыбранном товаре || |-| autohide-alphasearch || bool|| Скрывать при поиске по алфавиту || |-| autoshow-alphasearch || bool|| Выводить при поиске по алфавиту || |-| weight-is-stable || bool|| Выводить при стабильном весе || |-| weight-is-not-stable || bool|| Выводить при не стабильном весе || |-| weight-is-zero || bool|| Выводить при нулевом весе || |-| weight-is-not-zero || bool|| Выводить при не нулевом весе || |-| imagerecognition-on-idle || bool|| Выводить включенной, но неактивной системе распознавания товаров || |-| imagerecognition-on-search || bool|| Выводить при анализе товара системой распознавания товаров || |-| imagerecognition-on-result || bool|| Выводить при результативном распознавании товара || |-| imagerecognition-on-error || bool|| Выводить при ошибке распознавания товара || |}
:{%date%} - текущая дата.== Для элемента "Price" и "Total" ==
:{%time%} | class="wikitable"|- текущее время.! Имя тега !! Тип данных !! Описание !! Используется в алгоритмах:{%address%} |-| contents- адрес места установки весовmargins || integer array || 4 числа для задания расстояния от границ.Слева - Сверху - Справа - Снизу.Например:{%req[3, 5, 3, 5] ||-| joint-id%price || bool || Выводить или цену, или цену со скидкой, если есть скидка на товар || |} - уникальный номер заявки/сообщения.
:{%error%} - номер и описание ошибки. :{%from%} - источник сообщения (с какой формы отправили). :{%scale-info%} - общая информация о весах. :{%scale-model%} - модель весов. :{%full-system-info%} - полная информация о системе. :%0A или {%new-line%} - Переход на новую строку.== Для элемента "Goods/Name" ==
{| class="wikitable"
|-
! Имя тега !! Тип данных !! Описание !! Используется в алгоритмах
|-
| replace-to || int || На что меняется название товара, если нет картинки и разрешена ее замена на название товара
0 - номер товара, 1 - код магазина, 2 - доп номера товара
|-
| use-name || bool || Использовать поле "Name" вместо "FullName". Поддерживается начиная со сборки 3860. ||
|-
| remove-1kg || bool || Удалять строки подобные "1 кг" из названия товара при выводе на экран. Поддерживается начиная со сборки 3960. ||
|-
| remove-1kg-regexp || string || При удалении строк "1 кг" использовать заданное значение в качестве фильтра поиска. Параметр задается в формате regular expressions. Поддерживается начиная со сборки 3960. ||
|-
| remove-weight || bool || Удалять строки подобные "вес." из названия товара при выводе на экран. Поддерживается начиная со сборки 3960. ||
|-
| remove-weight-regexp || string || При удалении строк "вес." использовать заданное значение в качестве фильтра поиска. Параметр задается в формате regular expressions. Поддерживается начиная со сборки 3960. ||
||
|}
== Для элемента элементов "FormsPicture", "SecondPicture" ==
{| class="wikitable"
! Имя тега !! Тип данных !! Описание !! Используется в алгоритмах
|-
| showsmooth-time transformation || bool || Режим масштабирования || Если текст есть, он заменяет генерируемое системой значение в коде|-| transformation || int || Режим масштабирования: 0 - быстрое, 1 - качественное || Если текст есть, он заменяет генерируемое системой значение в коде|-| keep-aspect-ratio || bool || Соблюдение пропорций при масштабировании || Если текст есть, он заменяет генерируемое системой значение в коде|-| keep-aspect-ratio-by-expanding || bool || Соблюдение пропорций при масштабировании с расширением по максимальной строге || Если текст есть, он заменяет генерируемое системой значение в коде|-| aspect-ratio || int || Время показа формы Соблюдение пропорций при масштабировании: 0 - не соблюдать, 1 - соблюдать, 2 - соблюдать с расширением || Используется Если текст есть, он заменяет генерируемое системой значение в форме "Feedback" для ограничения времени выводакоде|-| autohide || bool|| Автоматически скрывать при невыбранном товаре || |-| autoshow|| bool|| Автоматически скрывать при невыбранном товаре || |-| autohide-alphasearch || bool|| Скрывать при поиске по алфавиту || |-| autoshow-alphasearch || bool|| Выводить при поиске по алфавиту || |-| weight-is-stable || bool|| Выводить при стабильном весе || |-| weight-is-not-stable || bool|| Выводить при не стабильном весе || |-| weight-is-zero || bool|| Выводить при нулевом весе || |-| weight-is-not-zero || bool|| Выводить при не нулевом весе || ||
|}
 
== Для элемента "StaticText" ==
 
{| class="wikitable"
|-
! Имя тега !! Тип данных !! Описание !! Используется в алгоритмах
|-
| autohide || bool|| Автоскрывать при невыбранном товаре ||
|-
| autoshow|| bool|| Автопоказывать при невыбранном товаре ||
|-
| autohide-alphasearch || bool|| Скрывать при поиске по алфавиту ||
|-
| autoshow-alphasearch || bool|| Выводить при поиске по алфавиту ||
|-
| weight-is-stable || bool|| Выводить при стабильном весе ||
|-
| weight-is-not-stable || bool|| Выводить при не стабильном весе ||
|-
| weight-is-zero || bool|| Выводить при нулевом весе ||
|-
| weight-is-not-zero || bool|| Выводить при не нулевом весе ||
|-
| lower|| bool|| Разместить текст внизу под другими элементами ||
|-
| imagerecognition-on-idle || bool|| Выводить включенной, но неактивной системе распознавания товаров ||
|-
| imagerecognition-on-search || bool|| Выводить при анализе товара системой распознавания товаров ||
|-
| imagerecognition-on-result || bool|| Выводить при результативном распознавании товара ||
|-
| imagerecognition-on-error || bool|| Выводить при ошибке распознавания товара ||
|}
 
== Для элемента "Pictures" ==
 
{| class="wikitable"
|-
! Имя тега !! Тип данных !! Описание !! Используется в алгоритмах
|-
| autohide || bool|| Автоскрывать при невыбранном товаре ||
|-
| autoshow|| bool|| Автопоказывать при невыбранном товаре ||
|-
| autohide-alphasearch || bool|| Скрывать при поиске по алфавиту ||
|-
| autoshow-alphasearch || bool|| Выводить при поиске по алфавиту ||
|-
| weight-is-stable || bool|| Выводить при стабильном весе ||
|-
| weight-is-not-stable || bool|| Выводить при не стабильном весе ||
|-
| weight-is-zero || bool|| Выводить при нулевом весе ||
|-
| weight-is-not-zero || bool|| Выводить при не нулевом весе ||
|-
| smooth-transformation || bool || Режим масштабирования || Если текст есть, он заменяет генерируемое системой значение в коде
|-
| keep-aspect-ratio || bool || Соблюдение пропорций при масштабировании || Если текст есть, он заменяет генерируемое системой значение в коде
|-
| movie|| bool|| Анимированная картинка (gif) ||
|}
 
== Для элемента "Progress" ==
 
{| class="wikitable"
|-
! Имя тега !! Тип данных !! Описание !! Используется в алгоритмах
|-
| showtext|| bool|| ||
|}
 
== Для элемента "PopularGoods" ==
 
{| class="wikitable"
|-
! Имя тега !! Тип данных !! Описание !! Используется в алгоритмах
|-
| enable-buttons|| bool|| Показывать или нет кнопки перехода между страницами ||
|}
 
== Для элемента "QRCode" ==
 
{| class="wikitable"
|-
! Имя тега !! Тип данных !! Описание !! Используется в алгоритмах
|-
| prescaler || int || Количество пикселей на бит полученного кода || По умолчанию 1
|-
| error-correction || int || Уровень коррекции ошибок || От 0 (lowest) до 3 (highest). По умолчанию 1.
 
Level L (Low): up to 7% damage.
 
Level M (Medium): up to 15% damage.
 
Level Q (Quartile):up to 25% damage.
 
Level H (High): up to 30% damage.
|-
| smooth-transformation || bool || Режим масштабирования || Если текст есть, он заменяет генерируемое системой значение в коде
|-
| keep-aspect-ratio || bool || Соблюдение пропорций при масштабировании || Если текст есть, он заменяет генерируемое системой значение в коде
|-
| encode-mode || int || Режим кодирования информации в коде || От 0 до 7
|-
| text || string || Текст для кодирования в коде || Если текст есть, он заменяет генерируемое системой значение в коде.
 
Шаблоны используемые при формировании текста:
 
:{%sn%} - заводской номер весов.
 
:{%date%} - текущая дата.
 
:{%time%} - текущее время.
 
:{%address%} - адрес места установки весов.
 
:{%req-id%} - уникальный номер заявки/сообщения.
 
:{%error%} - номер и описание ошибки.
 
:{%from%} - источник сообщения (с какой формы отправили).
 
:{%scale-info%} - общая информация о весах.
 
:{%scale-model%} - модель весов.
 
:{%full-system-info%} - полная информация о системе.
 
:%0A или {%new-line%} - Переход на новую строку.
 
|}
 
== Для элемента "Forms" ==
 
{| class="wikitable"
|-
! Имя тега !! Тип данных !! Описание !! Используется в алгоритмах
|-
| show-time || int || Время показа формы || Используется в форме "Feedback" для ограничения времени вывода
|}
 
= Описание создания клавиатуры (элементы ''ххх''Keyboard) =
 
Данное описание используется при создании трех видов клавиатур:
# Цифровой - для выбора товара по номерам. Элемент: '''''Keyboard'''''
# Фасовочной - для выбора товара по номерам и использования специальных функций. Элемент: '''''PackingKeyboard'''''
# Алфавитной - для алфавитного поиска товаров. Элемент: '''''AlphaKeyboard'''''
 
Элементов "AlphaKeyboard" может быть несколько.
 
Для каждого языка ввода создается отдельный элемент.
 
Переключение между клавиатурами осуществляется кнопкой с типом '''21'''. При нажатии кнопки переключения выбирается следующая клавиатура. При достижении конца списка осуществляется переход на первую клавиатуру в списке.
 
==Основные тэги==
{| class="wikitable"
|-
! Имя тега !! Тип данных !! Описание !! Используется в алгоритмах
|-
| rows || int || Количество рядов клавиатуры ||
|-
| button-in-row|| int || Количество кнопок в каждом ряду ||
|-
| row-'''''x''''' || array || Описание ряда '''''x''''' клавиатуры ||
|-
| button-'''''x''''' || array || Описание кнопки '''''x''''' ||
|-
| type || int || Тип кнопки ||
|-
| name || string || Название (надпись) кнопки ||
|-
| picture || string || Картинка кнопки ||
|-
| col-in-button || int || Количество занимаемых кнопкой столбцов ||
|}
 
== Типы кнопок ==
 
{| class="wikitable"
|-
! Код кнопки !! Тип кнопки !! Описание !! Примечания
|-
| -1 || Пустая || Не используется для нажатия - выводится пустое место ||
|-
| 0...9 || Цифры || Используется для ввода чисел ||
|-
| 10 || C || Сброс набранного ||
|-
| 11 || Ввод || ||
|-
| 12 || Ноль || ||
|-
| 13 || Промотка этикетки|| ||
|-
| 14 || Авто печать || ||
|-
| 15 || Тара || ||
|-
| 16 || Фикс товара || ||
|-
| 17 || Итоговая этикетка || ||
|-
| 18 || Выбор оператора || ||
|-
| 19 || Буква || Используется для добавления кнопки ввода букв ||
|-
| 20 || Пробел || ||
|-
| 21 || Переключение алфавитной клавиатуры (смена языка) || ||
|}
 
== Стили отображения ==
 
При отображении клавиатур можно менять отображение каждой из кнопок с помощью стилей.
 
Для этого необходимо задать '''StyleSheet''' для блока клавиатуры.
 
Возможны следующие названия для кнопок:
ButtonSwitchLang
ButtonClear
ButtonPrint
ButtonZero
ButtonFeed
ButtonAutoPrint
ButtonTare
ButtonFixPLU
ButtonTotalLabel
ButtonSelectOperator
ButtonSpace
Цифровые кнопки ButtonX - X заменяется на тип кнопки
Алфавитные кнопки ButtonX_Y - X заменяется на тип кнопки, Y заменяется на unicode код буквы в десятичном представлении
 
Пример:
 
<source lang="xml">
<StyleSheet><![CDATA[
* { color: rgb(0, 0, 0); font: bold 50pt "Futura PT"; margin: 5px; }
QPushButton { border: 0px; border-style: solid; border-radius: 7px; background-color: #465682; color: white; font: bold 40pt "Futura LT"; qproperty-iconSize: 80px 80px;}
QPushButton#ButtonSwitchLang { color: #ffb722;}
QPushButton#ButtonClear { color: grey; font: bold 40pt "Futura PT"; qproperty-iconSize: 80px 80px; background-color: rgba(230, 230, 230, 0);}
QPushButton#ButtonPrint { background-color: red; color: white; font: bold 45pt "Futura PT"; }
QPushButton#ButtonPrint:hover { background-color: rgb(95, 89, 89); color: rgb(255, 255, 255); }
QPushButton#ButtonClear:hover { background-color: rgba(95, 89, 89,0); color: rgb(255, 255, 255); }
QPushButton:hover { background-color: rgb(95, 89, 89); color: rgb(255, 255, 255); }
]]></StyleSheet>
</source>
 
==Пример описания цифровой клавиатуры==
 
<source lang="json">
"spacing" : 0,
"keyboard-map" : {
"rows" : 4,
"button-in-row" : 3,
"row-1" : {
"button-1" : { "type" : 1 },
"button-2" : { "type" : 2 },
"button-3" : { "type" : 3 },
},
"row-2" : {
"button-1" : { "type" : 4 },
"button-2" : { "type" : 5 },
"button-3" : { "type" : 6 },
},
"row-3" : {
"button-1" : { "type" : 7 },
"button-2" : { "type" : 8 },
"button-3" : { "type" : 9 },
},
"row-4" : {
"button-1" : { "type" : 10, "name" : "", "picture" : "{%algoritm-path%}/backspaceb.png", "col-in-button" : "1" },
"button-2" : { "type" : 0 },
"button-3" : { "type" : 11, "name" : "Ввод", "picture" : " " },
},
}
</source>
 
==Пример описания клавиатуры с алфавитом==
 
<source lang="json">
"autohide-numbersearch" : "false",
"spacing" : 0,
"keyboard-map" : {
"rows" : 7,
"button-in-row" : 5,
"row-1" : {
"button-1" : { "type" : 19, "name" : "а", "picture" : " " },
"button-2" : { "type" : 19, "name" : "б", "picture" : " " },
"button-3" : { "type" : 19, "name" : "в", "picture" : " " },
"button-4" : { "type" : 19, "name" : "г", "picture" : " " },
"button-5" : { "type" : 19, "name" : "д", "picture" : " " },
},
"row-2" : {
"button-1" : { "type" : 19, "name" : "е", "picture" : " " },
"button-2" : { "type" : 19, "name" : "ж", "picture" : " " },
"button-3" : { "type" : 19, "name" : "з", "picture" : " " },
"button-4" : { "type" : 19, "name" : "и", "picture" : " " },
"button-5" : { "type" : 19, "name" : "й", "picture" : " " },
},
"row-3" : {
"button-1" : { "type" : 19, "name" : "к", "picture" : " " },
"button-2" : { "type" : 19, "name" : "л", "picture" : " " },
"button-3" : { "type" : 19, "name" : "м", "picture" : " " },
"button-4" : { "type" : 19, "name" : "н", "picture" : " " },
"button-5" : { "type" : 19, "name" : "о", "picture" : " " },
},
"row-4" : {
"button-1" : { "type" : 19, "name" : "п", "picture" : " " },
"button-2" : { "type" : 19, "name" : "р", "picture" : " " },
"button-3" : { "type" : 19, "name" : "с", "picture" : " " },
"button-4" : { "type" : 19, "name" : "т", "picture" : " " },
"button-5" : { "type" : 19, "name" : "у", "picture" : " " },
},
"row-5" : {
"button-1" : { "type" : 19, "name" : "ф", "picture" : " " },
"button-2" : { "type" : 19, "name" : "х", "picture" : " " },
"button-3" : { "type" : 19, "name" : "ц", "picture" : " " },
"button-4" : { "type" : 19, "name" : "ч", "picture" : " " },
"button-5" : { "type" : 19, "name" : "ш", "picture" : " " },
},
"row-6" : {
"button-1" : { "type" : 19, "name" : "щ", "picture" : " " },
"button-2" : { "type" : 19, "name" : "ы", "picture" : " " },
"button-3" : { "type" : 19, "name" : "ъ", "picture" : " " },
"button-4" : { "type" : 19, "name" : "э", "picture" : " " },
"button-5" : { "type" : 19, "name" : "ю", "picture" : " " },
},
"row-7" : {
"button-1" : { "type" : 10, "name" : "", "picture" : "{%algoritm-path%}/backspaceb.png", "col-in-button" : "4" },
"button-2" : { "type" : 10, "name" : "я", "picture" : " " },
"button-3" : { "type" : 1 },
"button-4" : { "type" : 2 },
"button-5" : { "type" : 19, "name" : "я", "picture" : " " },
},
}
</source>
= Дополнительное описание =

Навигация