U8开发之工具栏控件.docx

上传人:b****5 文档编号:12149088 上传时间:2023-04-17 格式:DOCX 页数:38 大小:313.67KB
下载 相关 举报
U8开发之工具栏控件.docx_第1页
第1页 / 共38页
U8开发之工具栏控件.docx_第2页
第2页 / 共38页
U8开发之工具栏控件.docx_第3页
第3页 / 共38页
U8开发之工具栏控件.docx_第4页
第4页 / 共38页
U8开发之工具栏控件.docx_第5页
第5页 / 共38页
点击查看更多>>
下载资源
资源描述

U8开发之工具栏控件.docx

《U8开发之工具栏控件.docx》由会员分享,可在线阅读,更多相关《U8开发之工具栏控件.docx(38页珍藏版)》请在冰豆网上搜索。

U8开发之工具栏控件.docx

U8开发之工具栏控件

U8工具栏控件

摘要

工具栏(Toolbar)是U8应用程序常用的界面元素。

把菜单中常用的命令做成按钮安排在工具条中,配上适当的图标符号和文本提示,能够极大地方便用户。

U8产品开发尤其是前台UI开发中,工具栏控件和窗体一样是系统展现不可缺少的一部分。

在早期U8产品开发过程中大量使用了微软的MSToolbar,但是随着U8ERP产品开发的精细化、专业化,微软的MSToolbar在界面设计和程序开发中暴露出了诸如界面图标配置不灵活、不支持多级菜单、不适应复杂应用场景、对多语的支持不够完善等开发问题。

为了弥补这些不足,并且兼容之前的产品,U8平台提供了工具栏控件。

在V11版本中,又对工具栏在UE效果上做了进一步改良,采用Ribbon工具栏风格,形成了现在U8产品的工具栏效果。

什么是工具栏?

Ribbon风格:

Ribbon是一种以皮肤及标签页为架构的用户界面(UserInterface),原先出现在MicrosoftOffice2007及2010的Word、Excel和Powerpoint等组件中,后来也被运用到Windows7的一些附加组件等其它软件中,如画图和写字板,以及Windows8中的资源管理器。

它是一个收藏了命令按钮和图标的皮肤。

它把命令组织成一组"标签",每一组包含了相关的命令。

每一个应用程序都有一个不同的标签组,展示了程序所提供的功能。

在每个标签里,各种的相关的选项被组在一起。

设计Ribbon的目的是为了使应用程序的功能更加易于发现和使用,减少了点击鼠标的次数。

门户Toolbar:

从门户树形菜单或全景式菜单打开的选项卡式窗体〔即嵌入门户的窗体〕中包含的工具栏称为门户Toolbar。

如下列图所示:

图门户Toolbar示意图

由于门户工具栏是U8各产品较常见且核心的内容,所以有必要介绍门户工具栏内部的一些概念,包括排版组、分组、按钮样式等。

以下分别介绍:

按钮分组:

在门户Toolbar上,两个分割线之间的区域即为一个按钮分组。

图按钮分组示意图

排版组:

每个纵向排列的按钮集合即为一个排版组,排版组形式可能表现为一个大按钮、或者两个小按钮、三个小按钮。

如下列图:

〔一个大按钮〕

〔两个小按钮〕

〔三个小按钮〕

按钮样式主要表现为普通按钮、下拉菜单〔带设置默认功能〕、下拉菜单〔不带设置默认功能、Toggle按钮、Combobox类型按钮。

〔Toggle按钮〕

〔普通按钮〕

〔下拉菜单〔不带设置默认功能〕〕

〔下拉菜单〔带设置默认功能〕〕

〔显示模板信息的按钮为Combobox类型按钮〕

由于单据是U8产品常见且核心的功能,所以单据上除了有门户Toolbar以外,也包含自己的Toolbar,方便用户能够快速定位功能。

单据的Toolbar包括表头Toolbar和表体Toolbar。

表头Toolbar:

表头工具栏并不是一个完整的工具栏,表头工具栏只是包含刷新、翻页〔首页、前页、后页、末页〕、高级等按钮。

其他的是单据表头的一部分,是单据控件的内部功能。

如下列图所示:

图表头Toolbar示意图

表体Toolbar:

表体工具栏是指单据表体顶部的工具栏,主要是针对表体的一些便捷操作的功能集合,方便用户浏览、操作表体数据时进行本单据的个性化操作。

如下列图所示:

图表体Toolbar示意图

模态窗体Toolbar:

非嵌入门户的窗体上的Toolbar工具栏。

这种窗体上的按钮样式相对门户Toolbar要少,没有Combobox类型、没有排版组和大小按钮的概念。

U890、U810.0、U810.1版本的按钮样式和U811.0模态窗体Toolbar的按钮样式相同。

图模态窗体Toolbar

目标

本文主要介绍工具栏控件的基础知识,应用过程及相关注意事项,方便各类U8产品开发人员更好的使用工具栏控件,更高效的开发产品。

工具栏可以做什么?

工具栏是U8应用程序开发中必不可少的组件,工具栏支持多语、支持键盘快捷键、支持多级菜单的展示和运用、支持设置图标和文字、集成MSToolbar方便业务组快速开发同时保持程序的向后兼容性。

1.V10.1及之前版本工具栏特性

由于V11.0版本只是在界面UE效果和工具栏构建方式上做了修改,其他内容均和之前版本相似,所以这里不做重点的讲解,这些版本的样式和ssss相同。

使用方式将在[如何使用工具栏组件]中介绍。

2.V11特性

a)支持流式布局

Ø没有权限的按钮不显示,相同排版组内其余按钮自动重新排版。

排版组可以定义小按钮最大行数。

当出现空白列时,后面的按钮自动向前平移。

Ø一个排版组内按钮因授权问题导致只有一个小按钮时自动升级为大按钮。

Ø相关系统没有启用而导致的不可用功能按钮不显示,如工作流没有启用,提交按钮不显示。

Ø有权限但当前单据状态或者操作状态下不可用按钮置灰。

b)支持多行显示

图多行显示示意图

Ø工具栏高度为三行横向排版小按钮高度。

Ø大按钮图标和标签采用上下排版,按钮占整个工具栏可用高度〔三行小按钮〕。

Ø小按钮图标和标签左右排版,当一列有三个小按钮时工具栏可用高度三等分、纵向中对齐,当一列有两个小按钮时工具栏可用高度二等分、纵向中对齐,当一列只有一个小按钮时工具栏可用高度二等分,纵向中对齐,按钮放在第一行。

Ø当相邻有多个小按钮时,可以把它们划分为一个或者多个排版组,每个排版组可以指定排版行数。

c)支持分组

Ø按钮支持按分组排列、排版组信息

d)多按钮样式

Ø普通小按钮、下拉菜单小按钮、有默认功能的下拉菜单小按钮

Ø普通大按钮、下拉菜单大按钮、有默认功能的下拉菜单大按钮

3.数据字典

a)V11.0数据字典

窗体按钮基本表〔AA_FormButtons_base〕(UFMeta库)

字段名

字段类型

说明

ctoolbarPosIndex

nvarchar(5)

标识窗体上该按钮所处位置信息.P(门户Toolbar),T(表头Toolbar),B(表体Toolbar) ,其中T、B只对单据窗体有用。

FunctionKey

nvarchar(100)

该按钮的功能Key 

cAuthid

Nvarchar(255)

无用字段,方便抽取,不要赋值

cSetGroup

Nvarchar(120)

排版组名称

ProcessObjectName

Nvarchar(400)

组件名信息〔系统内部公共组件名,外部无需预置,无意义〕

iToolBarStyle

tinyint

按钮类型。

0代表普通按钮,1代表Check,2代表ButtonGroup,3代表分隔符,4代表PlaceHolder,5代表普通DropDown,55代表Combobox,56代表DropDown,57代表ToggleButton,128代表下拉但是不需要设置默认 

cSubID

Nvarchar(50)

子产品ID 

cResID

Nvarchar(100)

资源号 

iOrder

int

位置信息〔决定按钮在排版组的位置〕

cTipResID

Nvarchar(100)

提示信息多语资源号

cForegroundColor

Nvarchar(120)

前景色

cGroup

Nvarchar(60)

分组信息(cGroup=Hidden则代表该组按钮隐藏不显示)

cButtonKey

Nvarchar(40)

按钮Key

cProjectNO

Nvarchar(50)

项目号

cHotKey

Nvarchar(200)

热键

cToolBarType

Nvarchar(20)

暂不使用

iVoucherCtlIndex

Tinyint

针对单据才有用,单据窗体上该按钮对应的单据控件ID 

cFormCode

Nvarchar(40)

窗体的唯一标识,建议按照如下格式预置:

子产品号+前缀+单据/列表+窗体描述+CardNumber,例如frms_(前缀)_Voucher〔单据〕_PU(子产品号)_88(cardNumber)

以保持唯一性为主,类似如下的命名:

PU_frms_Voucher_Test_88

PU_Frms_VoucherList_Test_88

cBackgroundColor

Nvarchar(120)

背景色

iSetGroupRow

Int

排版组:

3/2/1。

3代表一组里面有3个按钮,2代表一组有两个按钮,1代表一组里面有一个按钮

cPic

Nvarchar(60)

图片名〔无路径、无后缀名〕

iheightRow

Int

行高。

3代表大按钮,1代表小按钮

窗体按钮多语资源表〔AA_FormButtons_lang〕(UFMeta库)

字段名

字段类型

说明

Autoid

Int

自增id,唯一标识

cCaption

Nvarchar(200)

按钮标题

cProjectNO

Nvarchar(50)

项目号

cFormCode

Nvarchar(40)

窗体标识,建议按照如下格式预置:

子产品号+前缀+单据/列表+窗体描述+CardNumber,例如frms_(前缀)_Voucher〔单据〕_PU(子产品号)_88(cardNumber)

以保持唯一性为主,类似如下的命名:

PU_frms_Voucher_Test_88

PU_Frms_VoucherList_Test_88

Localeid

Nvarchar(10)

语种信息

cSubID

Nvarchar(50)

子产品iD

cToolTip

Nvarchar(600)

按钮的Tip信息

cButtonKey

Nvarchar(40)

按钮Key

窗体按钮子菜单信息表〔AA_FormButtonMenus_base〕(UFMeta库)

字段名

字段类型

说明

cParentKey

Nvarchar(40)

按钮的上级菜单或菜单Key

cButtonKey

Nvarchar(40)

菜单对应按钮Key 

FunctionKey

Nvarchar(100)

公共按钮执行的公共组件函数key,和ProcessObjectName配合使用

cFormCode

Nvarchar(40)

所在窗体的唯一标识,建议按照如下格式预置:

子产品号+前缀+单据/列表+窗体描述+CardNumber,例如frms_(前缀)_Voucher〔单据〕_PU(子产品号)_88(cardNumber)

以保持唯一性为主,类似如下的命名:

PU_frms_Voucher_Test_88

PU_Frms_VoucherList_Test_88

iMenuType

Int

菜单类型:

1代表CheckBox类型,0代表普通类型

cMenuKey

Nvarchar(40)

菜单Key

cSubID

Nvarchar(50)

子产品ID

cForegroundColor

Nvarchar(120)

前景色 

cProjectNO

Nvarchar(50)

项目号

cAuthid

Nvarchar(255)

无用,仅为抽取工具抽取信息使用

cBackgroundColor

Nvarchar(120)

背景色

Igrade

Int

暂时无用

iOrder

Int

代表按钮下菜单的位置先后顺序

ProcessObjectName

Nvarchar(400)

公共处理组件名,仅为系统内部使用,和FunctionKey配合使用

cResID

Nvarchar(100)

资源号信息〔多语资源表关联时使用〕

窗体按钮菜单对应多语资源表〔AA_FormButtonMenus_lang〕(UFMeta库)

字段名

字段类型

说明

Autoid

Int

自增id,唯一标识

cCaption

Nvarchar(200)

按钮标题

cProjectNO

Nvarchar(50)

项目号

cFormCode

Nvarchar(40)

窗体标识,建议按照如下格式预置:

子产品号+前缀+单据/列表+窗体描述+CardNumber,例如frms_(前缀)_Voucher〔单据〕_PU(子产品号)_88(cardNumber)

以保持唯一性为主,类似如下的命名:

PU_frms_Voucher_Test_88

PU_Frms_VoucherList_Test_88

Localeid

Nvarchar(10)

语种信息

cSubID

Nvarchar(50)

子产品iD

cToolTip

Nvarchar(600)

按钮的Tip信息

cButtonKey

Nvarchar(40)

按钮Key

cMenuKey

Nvarchar(40)

菜单Key

窗体按钮菜单设置默认功能表〔AA_FormButtonsMenus_Default〕(UFData库)

注意这个是Data库的数据,其他的表都是Meta库的,这个表不是要预置的,是门户设置默认功能保存数据所用的表

字段名

字段类型

说明

cDefaultMenuKey

Nvarchar(40)

按钮要执行的功能对应的MenuKey

iType

Smallint

执行类型

Ufts

Timestamp

时间戳

cValue

Nvarchar(100)

默认值

cUserID

Nvarchar(100)

设置默认值的用户ID

cFormCode

Nvarchar(200)

按钮所在窗体的唯一标识,建议按照如下格式预置:

子产品号+前缀+单据/列表+窗体描述+CardNumber,例如frms_(前缀)_Voucher〔单据〕_PU(子产品号)_88(cardNumber)

以保持唯一性为主,类似如下的命名:

PU_frms_Voucher_Test_88

PU_Frms_VoucherList_Test_88

cButtonKey

Nvarchar(40)

对应按钮的Key

窗体信息基本表〔AA_Forms_base〕(UFMeta库)

字段名

字段类型

说明

cMemo

Nvarchar(200)

窗体信息描述

Pubufts

Timestamp

时间戳

cProjectNO

Nvarchar(50)

项目号

iFormType

Tinyint

标识窗体时模态弹窗还是嵌入门户 

cSubID

Nvarchar(10)

子产品ID

bSmallbutton

Tinyint

该窗体上是否是一排小按钮 

cFormCode

Nvarchar(40)

按钮所在窗体的唯一标识,建议按照如下格式预置:

子产品号+前缀+单据/列表+窗体描述+CardNumber,例如frms_(前缀)_Voucher〔单据〕_PU(子产品号)_88(cardNumber)

以保持唯一性为主,类似如下的命名:

PU_frms_Voucher_Test_88

PU_Frms_VoucherList_Test_88

窗体信息多语资源表〔AA_Forms_lang〕(UFMeta库)

字段名

字段类型

说明

cSubID

Nvarchar(50)

子产品ID

cFormDesc

Nvarchar(200)

窗体信息描述

Localeid

Nvarchar(10)

语种

cProjectNO

Nvarchar(50)

项目号

cFormCaption

Nvarchar(200)

窗体标题信息

cFormCode

Nvarchar(40)

按钮所在窗体的唯一标识,建议按照如下格式预置:

子产品号+前缀+单据/列表+窗体描述+CardNumber,例如frms_(前缀)_Voucher〔单据〕_PU(子产品号)_88(cardNumber)

以保持唯一性为主,类似如下的命名:

PU_frms_Voucher_Test_88

PU_Frms_VoucherList_Test_88

窗体按钮、菜单权限信息表〔AA_FormButtonAuths〕(UFMeta库)

字段名

字段类型

说明

cSubID

Nvarchar(50)

子产品ID

cButtonKey

Nvarchar(40)

按钮Key

cAuthid

Nvarchar(255)

权限号

cProjectNO

Nvarchar(50)

项目号

cMenuKey

Nvarchar(40)

菜单Key

cFormCode

Nvarchar(40)

按钮所在窗体的唯一标识,建议按照如下格式预置:

子产品号+前缀+单据/列表+窗体描述+CardNumber,例如frms_(前缀)_Voucher〔单据〕_PU(子产品号)_88(cardNumber)

以保持唯一性为主,类似如下的命名:

PU_frms_Voucher_Test_88

PU_Frms_VoucherList_Test_88

b)二次开发数据字典

窗体二次开发按钮、菜单信息表〔AA_CustomerButton〕(UFMeta库)〔U890/U10.0/U10.1〕

字段名

字段类型

说明

bInneralCommand

Int

是否内部命令,是则为1,否则为0 

cToolTip

Nvarchar(200)

按钮或菜单的提示信息

iOrder

Nvarchar(50)

按钮或菜单的位置信息

cLocaleID

Nvarchar(50)

多语类型(zh-CN/zh-TW/en-US)

cVisibleAsKey

Nvarchar(100)

设置显示状态和系统的哪个按钮键值一致 

cButtonType

Nvarchar(50)

default:

一般按钮,menu:

菜单,system替换系统按钮的功能,执行自己的方法,dropdown:

下拉类型 

cImage

Nvarchar(100)

图标的文件名〔不带扩展名〕 

cSubID

Nvarchar(50)

子产品号

DependenceSubIdList

Nvarchar(200)

依赖子产品列表(SubID以逗号分隔的字符串)

cButtonKey

Nvarchar(50)

按钮Key

cCustomerObjectName

Nvarchar(100)

该按钮要执行的功能的组件名

cButtonID

Uniqueidentifier

按钮ID(唯一标识GUID)

cKeyBefore

Nvarchar(50)

如果cButtonType是default则此键值表示自定义按钮前的按钮Key,如果cButtonType是menu则表示菜单所在的按钮,如果cButtonType是system则表示需要替换的按钮key 

cHotKey

Nvarchar(50)

热键信息

cFormKey

Nvarchar(50)

暂时无用,可以和cVoucherKey相同

cGroup

Nvarchar(50)

分组信息

cProjectNO

Nvarchar(50)

不允许使用U870项目号,客户化项目用U8CustDef 

cEnableAsKey

Nvarchar(100)

设置Enable状态和系统的哪个按钮键值一致

cCaption

Nvarchar(100)

按钮或菜单的标题

cVoucherKey

Nvarchar(50)

单据的CardNum信息

cVariant

Nvarchar(400)

自定义内容,里面的值会传给自己设置的处理的组件

 

窗体二次开发按钮、菜单信息表〔AA_CustomerButton〕(UFMeta库)〔V11.0版本〕

字段名

字段类型

说明

bInneralCommand

Int

是否内部命令,是则为1,否则为0 

cToolTip

Nvarchar(200)

按钮或菜单的提示信息

iOrder

Nvarchar(50)

按钮或菜单的位置信息

cLocaleID

Nvarchar(50)

多语类型(zh-CN/zh-TW/en-US)

cBackgroundColor

Nvarchar(120)

按钮或菜单的背景色

cVisibleAsKey

Nvarchar(100)

设置显示状态和系统的哪个按钮键值一致 

cButtonType

Nvarchar(50)

default:

一般按钮,menu:

菜单,system替换系统按钮的功能,执行自己的方法,dropdown:

下拉类型 

cImage

Nvarchar(100)

图标的文件名〔不带扩展名〕 

cSubID

Nvarchar(50)

子产品号

DependenceSubIdList

Nvarchar(200)

依赖子产品列表(SubID以逗号分隔的字符串)

cButtonKey

Nvarchar(50)

按钮Key

iVoucherCtlIndex

Tinyint

仅对单据上的按钮或菜单才有效。

该按钮所在的单据控件的Key 

cToolbarPosIndex

Nvarchar(5)

该按钮的位置信息,P代表门户Toolbar,T代表表头Toolbar,B代表表体Toolbar。

T/B仅对单据上的工具栏有效

cCustomerObjectName

Nvarchar(100)

该按钮要执行的功能的组件名

cButtonID

Uniqueidentifier

按钮ID(唯一标识GUID)

cKeyBefore

Nvarchar(50)

如果cButtonType是default则此键值表示自定义按钮前的按钮Key,如果cButtonType是menu则表示菜单所在的按钮,如果cButtonType是system则表示需要替换的按钮key 

cHotKey

Nvarchar(50)

热键信息

cSetGroup

Nvarchar(120)

排版组信息

cFormKey

Nvarchar(50)

暂时无用,可以和cVoucherKey相同

cGroup

Nvarchar(50)

分组信息

cForegroundColor

Nvarchar(120)

按钮前景色

cProjectNO

Nvarchar(50)

不允许使用U870项目号,客户化项目用U8CustDef 

cEnableAsKey

Nvarchar(100)

设置Enable状态和系统的哪个按钮键值一致

iheightRow

Tinyint

行高,3代表大按钮,1代表小按钮 

iSetGroupRow

Int

排版组:

3/2/1。

3代表一组里面有3个按钮,2代表一组有两个按钮,1代表一组里面有一个按钮。

cCaption

Nvarchar(100)

按钮或菜单的标题

cVoucherKey

Nvarchar(50)

单据的CardNum信息

cVariant

Nvarchar(400)

自定义内容,里面的值会传给自己设置的处理的组件

如何使用工具栏控件?

1.老版本应用工具栏控件〔890/10.0/10.1〕

首先引用MSToolbar、UFToolbar组件

一定要注意,引用MSToolbar要引用

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > PPT模板 > 动态背景

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1