解决大分辨率和个人喜好及近视远视的焦虑,实现星空表单界面放大显示(GUI客户端)

栏目:云星空知识作者:金蝶来源:金蝶云社区发布:2024-09-16浏览:1

解决大分辨率和个人喜好及近视远视的焦虑,实现星空表单界面放大显示(GUI客户端)

本篇二开基础:BOS平台的二开编程(论坛),python语法,json语法 


一、背景

    星空界面的整体布局是经过专业人机设计的,以当前最合适的方式展示界面。在客户端场景下,客户端具有的易操作,高性能,大数据容量等好处,使得客户端应用拥有很大的用户群。然而场景千变万化,不能一以盖之,在个人喜好习惯差异,近视和远视等现实场景下,在大分辨率设备应用中,我们需要一个更合适的字形展示来适应这些变化与差异,来解决我们的焦虑。


二、问题场景

    1、客户端具有大分辨率显示设备;

    2、使用人员个人喜好和习惯;

    3、存在近视远视的焦虑;


三、星空的解决方案与操作指引 发布:PT-146884  [7.7.0.202108] 构建号7.7.2256.5 2021.08.06

    1、解决难点:

        数据驱动模式下,在不同端点上展示不同效果,在固定布局下解决大字体下的重叠与遮挡,大布局与显示区域容量的冲突。

    2、本地配置法:

        2.1、配置如图,在用户菜单 【我的设置-本地配置】中设置【用户界面放大】参数,设置范围100%~200%。


image.webp

        

        2.2、效果如下图,设置为150%时,与100%的窗口对比。


image.webp


    3、二开代码编程法

        3.1、Python表单插件编程(表单插件编程参考论坛其他帖子,这里不做展开),具体代码在【二开指引中提供】

        3.2、效果如下图,设置为150%时,与100%的窗口对比。


image.webp


四、二开指引

    1、二开编码参考:https://wenku.my7c.com/article/170666 的 【插件实现样例】仅参考方法,目标表单按实际需求选择。

    2、控制代码如下:

from Kingdee.BOS.JSON import *

def ButtonClick(e):
    if(e.Key=='FBTNTEST'):
        args = JSONArray()
        arg = JSONObject()
        #设置放大150%
        arg['scale'] = 1.5
        args.Add(arg)
        this.View.AddAction('SetScale', args)
    if(e.Key=='FBTNTESTUNDO'):
        args = JSONArray()
        arg = JSONObject()
        #设置恢复默认配置
        arg['reset'] = True
        args.Add(arg)
        this.View.AddAction('SetScale', args)

    3、复制代码如果存在问题,请参考帖子解决论坛字符转译问题: https://wenku.my7c.com/article/158166130920311808 


五、答疑

    疑问1、为何是本地配置,不是全局配置?

    :定位端设备差异,以及个人喜好,近视远视等差异,在每个端上的具体情况差异不同,因此最合理配置方式是在具体端上控制。

    疑问2、为何有的窗口不会放大,例如本地参数配置?

    :本地参数配置本不是一个业务功能,同时参数也比较多,避免放大后导致参数不可直观看见,因此不做放大处理。再如调试httpwach窗口同理。另外,弹出窗口的标题栏我们也不做放大处理,由于放大后整体界面空间就变得有限和宝贵,对于不常需耗费眼睛的标题栏,我们为了节省可用空间也不做放大处理。

    疑问3、放大后,在老电脑下感觉性能有影响到

    :这是因为整体布局后,在放大渲染过程中,需要重新计算所有元素的位置和大小尺寸,这时就存在二次运算与布局调整,因此会存在性能消耗,因此在使用这个功能时需要做好性能与功能权衡,或者升级下客户端的终端电脑配置。

    疑问4、除了客户端外,Silverlight和HTML5端是否支持?

    :Silverlight和HTML5端都运行在浏览器上,浏览器本身已经有放大功能,可以按着键盘Ctrl键+鼠标滚轮就可以实现整体放大了,或者浏览器菜单的【缩放】菜单项进行设置。星空这里就不再做画蛇添足的功能了。


。。。。。。

创建:2021-08-06 10:39:00

编辑:2021-08-09 10:37:00




不错不错

解决大分辨率和个人喜好及近视远视的焦虑,实现星空表单界面放大显示(GUI客户端)

本篇二开基础:BOS平台的二开编程(论坛),python语法,json语法 一、背景 星空界面的整体布局是经过专业人机设计的,以当前最合适的方...
点击下载文档
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息