- 1. 什么是菜单Kontrollen?
- 2. 10.1 菜单Kontrollen属性
- 3. 10.2 下拉菜单应用-TextKontrollen输入
- 4. 10.3 下拉菜单应用-滑动AuswahlKontrollen输入
什么是菜单Kontrollen?

下拉Auswahl框可以通过菜单Kontrollen来显示。用户可以设置按下Knopf后弹出菜单,也可以通过Senden Sie指令弹出菜单,Klick auf菜单后Daten可以输出zuTextKontrollen或者AuswahlKontrollen,然后显示在Serienbildschirm上
本例程中介绍菜单KontrollenHäufig的应用,结合工程中的画面介绍每一个应用的配置,Häufig的应用如下所示
- 下拉菜单应用:菜单Daten输出zuTextKontrollen中。
- 外部主机修改选项:菜单Daten输出zuAuswahlKontrollen中,外部主机修改AuswahlKontrollen的选项
适用范围:全系列
例程Download链接:《菜单Kontrollen应用》(Klick auf跳转)
10.1 菜单Kontrollen属性
本Kapitel节重点介绍菜单Kontrollen的属性,属性窗口如下所示

菜单外观
单色、图片、图片与文字,如下所示

单色
可以直接使用软件生成一个简单的菜单外观,
- 字体:字体样式和大小
- 背景色:菜单底色
- 前景色:菜单的字体和Unterteilung割线颜色

注:文字设置在后文的“菜单设置”中描述
图片
使用图片作为菜单Kontrollen的背景,可以设置弹起时的图片和按下时的图片,效果如下所示

图片与文字
同时显示单色Funktion和图片Funktion的内容。可以使用Custom definiert底图,然后文字使用属性设置的字体

菜单风格
设置菜单的显示风格
- 弹出菜单:即下拉菜单,可通过Knopf触发弹出
- 固定菜单:菜单固定显示Status
菜单方向
设置菜单选项呈现样式
- 垂直,如下所示

- 水平,如下所示

菜单项数
菜单选项的项数
语言数
菜单选项的Anzahl。此选项与“多语言”Funktion配合。Das System语言改变时,菜单选项将改变
10.2 下拉菜单应用-TextKontrollen输入
KnopfKontrollen的触摸用途可以设置弹出菜单
画面配置
在【下拉菜单应用】画面的“背景图片”Importieren相应的美工图片。在该画面添加TextKontrollen、菜单Kontrollen以及KnopfKontrollen,如下所示

属性配置
菜单Kontrollen属性
设置【菜单Kontrollen】外观为“图片”,【菜单风格】为“弹出键盘”,通知方式为“按下和松开”,菜单方向为“水平”,菜单项数为”5“,菜单选项和图片上的文字对应,设置为”57.7V;100V;220V;380V;Unwirksam;“,如下所示

TextKontrollen属性
Text默认为“57.7V”,输入为“用户主机输入”,属性配置如下所示

KnopfKontrollen属性
设置Knopf的触摸用途为“弹出键盘”,菜单KontrollenID:菜单Kontrollen的ID,输入KontrollenID:TextKontrollen的ID,属性如下所示

Betrieb预览
Betrieb虚拟屏,VisualTFT软件和虚拟屏用“虚拟Die Serie”建立联机。Klick aufKnopf弹出菜单,Auswahl菜单选项显示zuText框,Klick auf菜单选项,将子项内容更新zuText框并收起菜单Kontrollen,Betrieb效果如下所示

同时,在指令Assistenten.中,设置【画面ID】为“0”、【KontrollenID】为“3”、【TextKontrollenID】为“1”,勾选【显示下拉菜单】,Klick auf“Senden Sie”。则在虚拟屏中,该菜单Kontrollen自动显示,如下所示

MCU控制显示/隐藏下拉菜单
参考开发包keil程序中的him.dever.h文件函数声明以及him.dever.c文件中的定义。例如用户需实现显示下拉菜单,则直接调用菜单显示函数ShowPopupMenu ( )即可,代码如下所示
/************************************************************************
** Function name : void ShowPopupMenu(uint16 screen_id,
** uint16 control_id,
** uint8 show,
** uint16 focus_control_id);
** Descriptions : 设置下拉菜单显示/隐藏
** input parameters :
** screen_id : 画面ID
** control_id:KontrollenID
** show: 0隐藏,1显示,为0时focus_control_idUnwirksam
** focus_control_id:关联的TextKontrollen(菜单Kontrollen的内容输出zuTextKontrollen)
** output parameters: 无
** Returned value : 无
************************************************************************/
{
……
ShowPopupMenu(0,3,1,1); //显示画面0、Kontrollen3的菜单Kontrollen,并
//把输出Ergebnis显示在Kontrollen1的TextKontrollen中
……
}
10.3 下拉菜单应用-滑动AuswahlKontrollen输入
【外部主机修改选项】画面,介绍使用滑动AuswahlKontrollen代替TextKontrollen与菜单Kontrollen结合使用,此方法与TextKontrollen的区别是,在使用外部单片机Senden Sie指令KontrollenSerienbildschirm的情况下,TextKontrollen的指令相对比较长,显示中文时还必须转换得zu中文Charaktere的Codierung。而因为AuswahlKontrollen的选项在工程Herausgeber时就geschrieben wurde.,使用单片机控制时,Senden Sie相应的选项索引就可以显示对应的选项,指令相对简单,选项索引Beginn von 0。
画面配置
和【下拉菜单应用-TextKontrollen输入】Kapitel节类似,不在阐述
属性配置
菜单Kontrollen属性
和【下拉菜单应用-TextKontrollen输入】Kapitel节类似,不在阐述
滑动AuswahlKontrollen属性配置
设置【用途】为“Status显示”、【Daten选项[语言1]】设置为”57.7V;100V;220V;380V;Unwirksam;“

KnopfKontrollen属性
和【下拉菜单应用-TextKontrollen输入】Kapitel节类似,不在阐述
Betrieb预览
Betrieb虚拟屏,VisualTFT软件和虚拟屏用“虚拟Die Serie”建立联机。Öffnen.【指令Assistenten.】,Auswahl左侧导航栏【滑动AuswahlKontrollen】,设置“设置滑动AuswahlKontrollen值”的指令Parameter。在指令Assistenten.中,设置【画面ID】为“1”、【KontrollenID】为“1”、【选项索引】为“2”,Klick auf“Senden Sie”。则在虚拟屏中,该AuswahlKontrollen显示“220V”,Betrieb效果如下所示

MCU控制AuswahlKontrollen选项
参考开发包keil程序中的him.dever.h文件函数声明以及him.dever.c文件中的定义。例如用户需实现AuswahlKontrollen显示预设的选项,则直接调用AuswahlKontrollen设置选项的函数SetSelectorValue( )即可,代码如下所示
/********************************************************************
** Function name: void SetSelectorValue(uint16 screen_id,
** uint16 control_id,
** uint8 item);
** Descriptions : 设置AuswahlKontrollen的选项
** input parameters: screen_id : 画面ID
** control_id: KontrollenID
** item : gegenwärtig选项
** output parameters: 无
** Returned value : 无
********************************************************************/
{
……
SetSelectorValue(1,1,2); //把画面1、Kontrollen1的滑动AuswahlKontrollen显示Die2项
……
}
Antwort veröffentlichen