<< 点击显示目录 >> 主页 mappView帮助助手 > mapp View帮助信息 > 工程 > 人机界面应用程序的结构 > 配置视图 > mapp View visualization object / mapp 视图可视化对象 |
mapp View可视化对象(.vis)定义了逻辑视图和配置视图中的哪些可视化组件参与在客户端上显示页面。每个配置可以包含1-n个可视化对象(.vis)。
一个可视化对象从对象目录中被添加到 配置视图中的mapp View 包中.
可视化对象是作为一个XML文件编辑的。各个部分的描述如下:
可视化ID需要用来识别客户端上的HMI应用。如果配置了多个可视化对象,那么唯一的ID用于将相应的HMI应用分配到显示器上。
<vdef:Visualization id="MainVisu" xmlns:vdef="http://www.br-automation.com/iat2015/visualizationDefinition/v2">
客户端的URL示例: %IPAddress%:81/index.html?visuId=MainVisu
可视化ID的评估是不分大小写的。例如,"MainVisu "和 "mainvisu "是等同的。
可视化ID允许包含以下字符。
- 字母
- 连字符
- 下划线
- 数字
不允许以数字或连字符开头,也不允许是以下受保护的字符串之一(不区分大小写)。
• "contents"
• "server"
• "BRVisu"
当HMI应用被提供给客户时,HMI应用的哪一页(pageRefId)最初被显示,在 "起始页 "部分被定义。这个页面也必须在<Pages>部分被引用。
<StartPage pageRefId="MainPage" />
该HMI应用所需的所有 逻辑视图页面 都在<页面>部分中提及。
<Pages>
<Page refId="MainPage" />
<Page refId="ParameterPage" />
</Pages>
一块内容不一定要被特别引用。当HMI应用被建立时,所有分配给一个页面的内容也会被自动包含。
自动 导航的ID 可以选择在本节中引用。
<Navigations>
<Navigation refId="MainNavigation" />
</Navigations>
在<BindingsSets>部分中提到了为该HMI应用配置的所有 绑定。
<BindingsSets>
<BindingSet refId="Binding1" />
</BindingSets>
在<EventBindingsSets>部分中引用了为该HMI应用配置的所有 事件绑定。
<EventBindingsSets>
<EventBindingsSet refId="EventBinding1" />
</EventBindingsSets>
该HMI应用所需的逻辑视图的所有 对话框 在<Dialogs>一节中被提及。
<Dialogs>
<Dialog refId="AboutDialog" />
<Dialog refId="LoginDialog" />
</Dialogs>
在<Contents>部分,输入了所有的内容,这些内容在任何页面中都没有被引用,但在运行时被动作 LoadContentInArea加载到页面中 ,比如说。
<Contents>
<Content refId="Content_99" />
</Contents>
在元素<Contents>中可选的 preCache="all "配置 ,可以强制预装HMI应用程序中的所有内容。
<Contents preCache="all">
</Contents>
在元素<Content>中使用可选的规范 preCache="true" ,每块内容都可以被单独预装。
<Contents>
<Content refId="Content_99" preCache="true">/>
</Contents>
如果选项<Contents preCache="all">被设置,可以通过额外指定 preCache="false "来排除个别内容 。
允许预装的最大内容数量是 mapp View配置中定义的缓存槽的数量 。
如果需要预装的内容比可用的缓存槽数量多,在构建过程中会输出警告。
在HMI应用程序启动时预装内容片段会导致启动时间延长(橙色屏幕)。只有在所有的内容片断都被预装后,才会显示起始页。
如果只在一个页面上被引用的内容片断应该被单独预装,它们也必须被输入元素<Contents>中。
在 逻辑视图中配置的片段的ID 可以选择在<SnippetsSets>部分进行引用。
<SnippetsSets>
<SnippetsSet refId="Snippets1" />
</SnippetsSets>
在 逻辑视图中配置的表达式的ID 可以选择在<ExpressionsSets>部分进行引用。
<ExpressionsSets>
<ExpressionsSet refId="Expression1" />
</ExpressionsSets>
在逻辑视图中配置的会话变量的ID 可以选择在<VariablesSets>部分引用。
<VariablesSets>
<VariablesSet refId="Variables1" />
</VariablesSets>
在<StartTheme>和<Themes>部分提到了HMI应用要使用的主题 和启动HMI应用时使用的主题。
<StartTheme themeRefId="BuRTheme1" />
<Themes>
<Theme refId="BuRTheme1" />
</Themes>
<Configurations>部分定义了HMI应用的特定配置参数。
这些参数是在<Configuration>元素中配置的。属性 Key 指定了参数的名称;属性 Value 指定了参数的值。
这些参数的使用是可选的。
参数 |
值 |
描述 |
activityCount |
true/false 默认值: false |
这个参数使活动计数器转发到服务器。 如果 在 MpUserX配置 中配置了 自动注销auto logout,活动计数器将自动启用。 |
watchdog |
以毫秒为单位的整数 默认值 value: 10000 |
该参数定义了监控客户端连接的超时。 超时值的单位是 毫秒。如果服务器和客户端之间的连接被中断,那么HMI应用程序最迟将在这个时间内重新启动。 超时的设置不能低于10000。 值为0的时候,就会禁用连接监控。 更高的值意味着更稳定的连接,因为短暂的连接中断不会导致HMI应用程序重新启动。 |
true/false 默认值: false |
这个参数可以用来自动调整内容以适应终端设备的浏览器分辨率。 启用后,HMI应用程序将使用 缩放模式 "包含contain"适应浏览器窗口 。 这种缩放模式只适用于直接启动的HMI应用程序。对于嵌入到页面中的HMI应用程序,该缩放模式适用于 分配。 如果屏幕分辨率(硬件像素)与缩放时配置的CSS像素分辨率(布局宽度/高度)不一致,那么像素矩阵就不再对应,浏览器会计算并 将 虚拟分辨率舍入 到物理像素中。如果没有引用页面的背景图片,这可能会导致一个区域内的内容片断之间出现1个像素的间距。 |
|
bootLogo |
该参数指定了启动HMI应用程序时显示的自定义图像。 该图像以其原始尺寸显示在屏幕的中间。 支持以下图像格式: PNG (文件扩展名 .png) JPEG (文件扩展名 .jpg 或 .jpeg) SVG (文件扩展名 .svg) GIF (文件扩展名 .gif) Windows bitmap (文件扩展名 .bmp) 当使用SVG文件时,必须确保<svg>标签的高度和宽度属性得到定义。 |
|
bootColor |
默认值: #FF8800 |
该参数指定了启动HMI应用程序时显示的自定义背景颜色。 |
favicon |
该参数配置了一个自定义的图标,用于识别网络浏览器中的HMI应用程序(根据浏览器的不同,用于书签、地址栏或标签)。
支持以下图像格式: ICO (文件扩展名 .ico) PNG (文件扩展名 .png) GIF (文件扩展名 .gif)
默认的尺寸和颜色深度: ICO: 16 × 16 或 32 × 32 与 16 至 16.7 million colors GIF 与 PNG: 16 × 16 与 256 colors |
|
browserZoom |
true/false 默认值: false |
用这个参数可以启用浏览器内部的捏合变焦手势的缩放。 重要提示:启用浏览器内部的捏合缩放手势可能会导致与其他HMI手势(滚动、缩放小部件)的冲突。 |
bootProgressBar |
true/false 默认值: false |
这个参数定义了在启动HMI应用程序时,是否应该显示预装内容(预存)的进度条。 进度条可以用 全局风格来着色。 |
moveThreshold |
整数,在20和50之间的像素 默认值: 20 |
该参数用于定义在触摸手势期间,在多点触摸客户端的哪个区域触发点击。 注意:如果一个小部件在可滚动容器中的位置发生变化,就不会触发点击。 |
keyboardOperation |
true/false 默认值: false |
该参数定义了HMI应用是否可以 通过外部键盘操作。 当键盘操作被启用时,一个具有由 全局样式定义的焦点边界的小部件 被显示出来。此外, 输入小部件的开始和结束行为 可以被配置。 如果启用了键盘操作,也可以通过触摸屏或鼠标操作。 |
<Configurations>
<Configuration key="activityCount" value="false" />
<Configuration key="watchdog" value="20000" />
</Configurations>
mapp View中使用的多点触摸手势可以在<Gestures>部分进行配置。
Gestures<部分是<Configurations>的一个小节,只能在<Configuration>部分之后添加。
使用这些参数是可选的
<Configurations>
<Gestures>
<SystemGesture1 touchPoints="2" />
<SystemGesture2 touchPoints="1" />
<SystemGesture3 touchPoints="3" />
</Gestures>
</Configurations>
参数 |
值 |
描述 |
touchPoints |
1 - 5 默认值: 2 |
这个参数可以用来设置一个手势所使用的触摸点(手指)的数量。 另见常见问题 - 识别刷卡手势。 |
snapTolerance |
0 - 100 默认值: 50 |
这个参数可以用来调整小部件ContentCarousel中切换到下一块内容的容忍度。 如果值是50,当前内容必须向左或向右移动超过小组件宽度的50%,才能切换到列表中的下一个内容。 到列表中的下一个内容。 这个参数是可选的,只适用于SystemGesture2。 |
手势 |
使用方法 |
触摸点的默认值 |
捕捉公差的默认值 |
SystemGesture1 |
用于页面导航( 见用手势导航)。 |
2 |
|
SystemGesture2 |
用于切换 部件ContentCarousel中的内容片段 。 在进行检测之前,该手势的内部阈值为30px。 |
2 |
50 |
SystemGesture3 |
用于客户端系统的手势事件 "SystemSwipe"(见 手势事件)。 如果SystemGesture1和SystemGesture2配置了不同数量的触摸点,可以通过SystemSwipe事件上的手势和事件绑定来独立使用页面导航。 |
2 |
mapp View中使用的虚拟键盘可以在<VirtualKeyboards>部分进行配置。
<VirtualKeyboards>部分是<Configurations>的一个小节,只能在<Configuration>和<Gestures>部分之后添加。
使用这些参数是可选的
<Configurations>
<VirtualKeyboards>
<InputProcessing onKeyDown="true" />
<NumericKeyboard refId="widgets.Keyboard.myNumpad" />
<AlphanumericKeyboard refId="widgets.Keyboard.alphapad_en" keyboardMappingRefId="cuKbd" />
</VirtualKeyboards>
</Configurations>
参数 |
值 |
描述 |
onKeyDown |
true/false 默认值: false |
如果这个参数被设置为 "true",虚拟键盘按键的动作将在按键被按下时执行。 否则,当一个键被点击时就会进行评估。这个设置影响到所有的系统键盘。(KeyBoard, NumPad, etc.) |
输入的开始和结束行为是在<键盘处理>部分配置的。
第<键盘处理>部分是<配置>的一个小节,只能在<配置>和<手势>部分之后添加。
使用这些参数是可选的;它们只能与配置元素 keyboardOperation="true"一起使用 。
参数 |
值 |
描述 |
OnStart |
any/accept 默认值: any |
OnStart 定义拥有焦点的部件的输入是否可以用该部件允许的任何字符开始(任何),或者是否用回车键启用输入(接受)。). |
OnEnd |
focus/accept 默认值: focus |
OnEnd 定义小部件中的输入是通过TAB/Shift+TAB(焦点)或Enter键(接受)的焦点改变来应用。 |
<Configurations>
<Configuration key="keyboardOperation" value="true" />
<KeyboardHandling>
<OnStart action="any" />
<OnEnd action="accept" />
</KeyboardHandling>
</Configurations>
这种行为适用于HMI应用程序中所有使用键盘操作的部件。因此,在小部件上进行配置是不必要的。
参数 |
值 |
描述 |
需要 |
refId |
参考用于数字输入的虚拟键盘(NumPad)的点符号。 e.g. "widgets.numpads.MyNumPad" |
如果该参数被设置,在HMI应用程序中使用引用的部件,而不是由mapp View提供的部件NumPad。 |
Yes |
autoSize |
true/false 默认值: false |
如果该参数设置为 "true",键盘的缩放比例与HMI相同。 因此,该参数只有在HMI通过 配置中的参数 缩放时才会产生影响 。 重要提示:参数autoSize的配置仅指用户定义的数字键盘,而不是mapp View widget widgets.brease.NumPad。 |
No |
minWidth |
整数 |
如果键盘被缩放,整个键盘的最小宽度。 |
No |
maxWidth |
整数 |
如果键盘被缩放,整个键盘的最大宽度。 |
No |
minHeight |
整数 |
如果键盘被缩放,整个键盘的最小高度。 |
No |
maxHeight |
整数 |
如果键盘被缩放,整个键盘的最大高度。 |
No |
如果高度和宽度都受到限制,较小的值用于最大比例系数,较大的值用于最小比例系数。
例子。宽度=600,高度=200,minWidth=200,minHeight=100
→ 最小比例系数=0.5
AlphanumericKeyboard字母数字键盘
参数 |
值 |
描述 |
需要 |
refId |
参考一个用于字母数字输入的虚拟键盘(AlphaPad)的点符号。 e.g. "widgets.keyboards.MyAlphaPad" |
如果设置了这个参数,引用的部件会在HMI应用程序中使用,而不是由mapp View提供的键盘部件。 如果选择的语言在 键盘配置中没有分配到相应的键盘,这个字母数字键盘也被用作后备键盘 。 重要的是:参数autoSize的配置仅指用户定义的字母数字键盘,而不是mapp View widgets.brease.KeyBoard。 |
Yes |
keyboardMappingRefId |
参考 键盘配置的ID |
如果这个 可选 参数被设置,在键盘配置中输入的相应语言的键盘布局将用于语言切换。 |
No |
autoSize |
true/false 默认值: false |
如果这个参数被设置为 "true",键盘将使用与HMI相同的值进行缩放。 因此,该参数仅在人机界面通过 配置中的参数 缩放时产生影响 。 |
No |
minWidth |
Integer |
如果键盘被缩放,整个键盘的最小宽度。 |
No |
maxWidth |
Integer |
如果键盘被缩放,整个键盘的最大宽度。 |
No |
minHeight |
Integer |
如果键盘被缩放,整个键盘的最小高度。 |
No |
maxHeight |
Integer |
如果键盘被缩放,整个键盘的最大高度。 |
No |
docking |
String |
定义字母数字键盘是否在浏览器窗口的底部打开(docking="bottom")。如果不使用这个属性,它将默认在浏览器窗口的中间位置打开。 |
No |
如果高度和宽度都受到限制,较小的值用于最大比例系数,较大的值用于最小比例系数。
例子。宽度=600,高度=200,maxWidth=1200,maxHeight=600
→ 最大比例系数=2