The invention discloses a method and system of string adaptive segmentation display based on control attributes, which includes: S1. Getting control attributes; S2. Intercepting a character substring that can be fully displayed by the control from the string to be displayed according to the control attributes, and displaying the character substring by the control; S3. Taking the string composed of the remaining characters after the character substring is intercepted as to be displayed. Show the string, repeat the execution of to S3 until all the characters in the string to be displayed are displayed. It has the advantages of self-adapting segmentation of text content, avoiding missing display of text content, effectively guaranteeing the correctness and beauty of text content display, simple processing method, and greatly reducing the requirement of text editing format.
【技术实现步骤摘要】
一种基于控件属性的字符串自适应分割显示方法及系统
本专利技术涉及UI界面控件文件显示
,尤其涉及一种基于控件属性的字符串自适应分割显示方法及系统,特别是适用于轨道交通车辆上显示设备对文本内容的显示。
技术介绍
显示器是轨道交通车辆上直接指导司乘人员行车的重要设备,目前机车、地铁、城轨等车辆的显示器界面一部分是基于FLTK工具进行开发的,界面中许多信息,特别是文字提示,直接为司乘人员提供了最重要的信息。比如,故障处理信息界面中包括故障描述、故障原因分析、司机处理措施、售后人员处理措施,并且司机/售后服务人员处理措施描述文字较多。由于FLTK控件宽度大小有限,并且显示的文字不能自动换行,如果需显示的文字总宽度超过控件自身宽度,则会出现文字显示不全的问题。目前利用FLTK开发工具开发的界面中,针对文字显示主要有两种处理方法。一种是在用于显示的文本文件中将每条信息固定分为相等的行数,如果实际字符不能占用所有行数,则用空格来填充,以确保在固定宽度,且数目与所分行数相同的控件中能显示下所有文字;另一种是在文本文档中的每条信息中插入特定的字符作为换行标签,以保证在具有合适高度的控件中能根据控件宽度换行显示。但是,由于中文字符、英文字符、标点符号的显示宽度不相同,并且不同的英文字符、标点符号的显示宽度也不相同,现有的方法仍然不能很好的实现对文本内容的显示。
技术实现思路
本专利技术要解决的技术问题就在于:针对现有技术存在的技术问题,本专利技术提供一种可自适应对文本内容进行分割,不会导致文本内容漏显示,可保证文本内容显示的正确性、美观性,处理方法简单,可大大降低对文本编辑 ...
【技术保护点】
1.一种基于控件属性的字符串自适应分割显示方法,其特征在于,包括如下步骤:S1. 获取控件属性;S2. 根据所述控件属性从待显示字符串中截取可由所述控件完整显示的字符子串,由所述控件显示所述字符子串;S3. 以截取了字符子串后剩余字符组成的字符串为待显示字符串,重复执行步骤S1至S3,直到待显示字符串中的字符全部显示完毕。
【技术特征摘要】
1.一种基于控件属性的字符串自适应分割显示方法,其特征在于,包括如下步骤:S1.获取控件属性;S2.根据所述控件属性从待显示字符串中截取可由所述控件完整显示的字符子串,由所述控件显示所述字符子串;S3.以截取了字符子串后剩余字符组成的字符串为待显示字符串,重复执行步骤S1至S3,直到待显示字符串中的字符全部显示完毕。2.根据权利要求1所述的基于控件属性的字符串自适应分割显示方法,其特征在于:所述控件属性包括控件宽度、显示字体类型、显示字体大小。3.根据权利要求2所述的基于控件属性的字符串自适应分割显示方法,其特征在于:步骤S2的具体步骤包括:S2.1.按照先后顺序依次从待显示字符串中读取字符,根据所述显示字体类型和显示字体大小确定所述字符的宽度,并计算已读取出字符的总宽度;S2.2.根据总宽度小于所述控件宽度的规则确定截取位置;S2.3.根据所述截取位置从所述待显示字符串中截取字符子串;S2.4.由所述控件显示所述字符子串。4.根据权利要求3所述的基于控件属性的字符串自适应分割显示方法,其特征在于:所述截取位置为以满足总宽度小于等于控件宽度条件的最大宽度所确定的已读取字符为字符子串的截取位置。5.根据权利要求4所述的基于控件属性的字符串自适应分割显示方法,其特征在于:所述步骤S2.2后,还包括步骤S2.2a:分析所述截取位置的字符情况,对所述截取位置进行调整,所述调整包括:第一调整方式:当所述截取位置向前的第一个字符为英文字符,且所述截取位置向前的第一个字符为预设的特定字符时,将所述截取位置向前移动一个字符位置;所述向前为向待显示字符串开始的方向,所述向后为向待显示字符串结束的方向。6.根据权利要求5所述的基于控件属性的字符串自适应分割显示方法,其特征在于:所述特定字符包括标点符号和空格。7.根据权利要求6所述的基于控件属性的字符串自适应分割显示方法,其特征在于:步骤S2.2a中所述调整还包括:第二调整方式:当所述截取位置向前的第一个字符、向前的第二个字符、以及向后的第一个字符均为英文字符,则将所述截取位置向前移动一个字符位置;在所述步骤S2.3之后,还包括步骤S2.3a:根据对所述截取位置进行调整的情况,修正所述字符子串;所述修正具体包括:当采用第二调...
【专利技术属性】
技术研发人员:李凯,饶天贵,胡士杰,黄赫,曾升,唐志阳,李黄河,
申请(专利权)人:株洲中车时代电气股份有限公司,
类型:发明
国别省市:湖南,43
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。