【SWT】Lable 文字折行

article/2025/9/14 4:23:23

目标

当Label 中的文字过多时,使得文字折行显示。
效果如图所示:
在这里插入图片描述

分析与实践

Label 自带样式是一行显示所有信息。当一行显示不下时,超出部分会被隐藏掉,当Label有足够长度时再将其展示出来。Label这种处理超出部分的方式很粗暴,对于用户的体验极差。

一种处理Label样式的方式即通过布局调整,其代码如下:
代码:


import org.eclipse.swt.SWT;
import org.eclipse.swt.layout.GridData;
import org.eclipse.swt.layout.GridLayout;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.widgets.Shell;public class TestDemo {public static void main(String[] args) {Display display = new Display();Shell shell = new Shell(display);shell.setLayout(new GridLayout());shell.setText("Demo设计");Composite container = new Composite(shell, SWT.NONE);GridData gridData = new GridData();gridData.grabExcessHorizontalSpace = true;gridData.grabExcessVerticalSpace = true;container.setLayoutData(gridData);GridLayout fillLayout = new GridLayout();container.setLayout(fillLayout);String textStr = "我是很长的文字 我是很长的文字 我是很长的文字 我是很长的文字 我是很长的文字 我是很长的文字 我是很长的文字 我是很长的文字 我是很长的文字 我是很长的文字 我是很长的文字 我是很长的文字 我是很长的文字 我是很长的文字 我是很长的文字 我是很长的文字";Label label = new Label(container,SWT.WRAP);label.setText(textStr);GridData layoutData = new GridData();
//		layoutData.widthHint = 280;layoutData.grabExcessHorizontalSpace = true;layoutData.grabExcessVerticalSpace = true;label.setLayoutData(layoutData);shell.setSize(300, 300);shell.open();while (!shell.isDisposed()) {if (!display.readAndDispatch())display.sleep();}display.dispose();}
}

效果

在这里插入图片描述

总结

SWT Label 处理超出部分文字的方式相当粗暴,与客户体验不好。本文通过使用 GridLayout 布局方式,使得 Label 文字换行展示,以增强用户体验。


http://chatgpt.dhexx.cn/article/Yy9UtIuu.shtml

相关文章

java swt 几种布局_实战SWT布局

fortune 阅读(577) 评论(0) 编辑 收藏 所属分类: java技术 标准的SWT布局类FillLayout:在容器中以相同的大小单行或单列的排列组件 RowLayout:以单行或多行的方式使用几个选项(fill,wrap,spacing,justify,type)定制组件的排列方式 GridLayout&#xff…

【SWT】内容分割线

目标 SWT 容器中画横向直线或竖向直线将容器中的内容分割开来。本文介绍了官方的两个示例,效果图见实践部分。 分析 SWT 中至少由两种方法画直线(横向或纵向) SWT 中的GC可以画直线 这种方法最容易想到,但实现起来比较麻烦&a…

SWT

strock width transform,全称笔画宽度变换,是一种局部的图像算子用于提取字符(letter)的笔画宽度作为图像特征。算法步骤如下: 分成三个部分: - 用canny算子计算梯度及方向 - SWT提取笔画宽度得到字符候选区域&am…

eclipse下搭建SWT图形界面开发环境

什么是SWT 参考:http://www.cppblog.com/baby-fly/archive/2009/10/20/99008.html 用java的人一定都知道AWT和Swing,而SWT(Standard Widget Toolkit)则是由Eclipse项目组织开发的一套完整的图形界面开发包,虽然当初仅仅是IBM为了编写Eclipse的…

SWT布局(Layouts)

每种类型操作系统对屏幕的定义不一样,在开发跨平台应用软件时,我们一般都会使用布局(Layout)来管理复合控件(Composite)中子控件的位置和大小。通过布局,程序员可以充分展示那些埋没已久的艺术细…

SWT简介

SWT简介 1. 为什么要使用SWT?  SWT是一个IBM开发的跨平台GUI开发工具包。在SWT之前,Sun已经提供了一个跨平台GUI开发工具包AWT (Abstract Windowing Toolkit)。虽然AWT框架也使用的是原生窗口部件(native widgets),但是它一直未能突破LCD问题。LCD问…

[转]实时股票数据接口大全

from: http://www.21andy.com/blog/20090530/1313.html 实时股票数据接口大全 股票数据的获取目前有如下两种方法可以获取:1. http/javascript接口取数据2. web-service接口 1.http/javascript接口取数据 1.1Sina股票数据接口 以大秦铁路(股票代码:…

股票数据在线获取

推荐:使用如下地址注册tushare并分享此链接。 https://tushare.pro/register?reg133232 分享此链接,注册tushare. 以前是使用tushare等下载保存到本地数据库后进行计算分析。 现在不想维护本地数据库,想使用时直接在线获取数据。经查找如…

获取股票实时交易数据的方法

分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章。分享知识,造福人民,实现我们中华民族伟大复兴! 获取股票实时交易数据的方法 注:本文为原创文章,转载时请注明转载地址。炒股有一段时间…

实时股票数据接口 (转,以防有用)

 http://blog.sina.com.cn/s/blog_510844b70102wrvf.html 实时股票数据接口 股票数据的获取目前有如下两种方法可以获取: 1. http/javascript接口取数据 2. web-service接口 1.http/javascript接口取数据1.1Sina股票数据接口 以大秦铁路(…

获取股票数据【实时更新股票数据、创建你的股票数据】、计算交易指标【买入、卖出信号、计算持仓收益、计算累计收益率】

在上一次获取股票数据【使用JQData查询行情数据、财务指标、估值指标】学习了使用JQData来查询股票相关数据, 这次则开始一点点构建咱们的量化交易系统了。 量化交易平台功能模块了解: 对于一个量化交易平台,它主要包含如下功能模块&#x…

使用Python获取股票实时数据和历史数据

决定新建一个专栏,专门研究股票数据的API接口。 由于不是混金融领域的人,百度调研了一会儿,没有找到合适的大公司维护的API接口。 yahoo-finance PyPI 这玩意架梯子都访问不到数据,不知道乍回事。许多大牛维护的pip包都是基于这…

Tushare免费获取股票数据:实时数据,历史数据,行情数据

一 操作手册 引导用户顺利开始使用Tushare Pro数据,以下步骤将带您开始Tushare数据之旅: 用户注册登录后可调用数据:https://tushare.pro/register?reg399205 二 如何获取TOKEN凭证 1、登录成功后,点击右上角->个人主页 2、…

如何用 Python 获取实时的股票数据?

这个我会!先上图 这篇回答中,我将向你展示两种不同的代码版本(加强版和一般版) 代码运行环境说明(非常重要) Python版本要求 Python 3 需要安装的库 efinance 库的安装方法是:打开 cmd&#x…

怎么用Python获取股票的实时数据?

学习目标: 应用industry实现行业股票列表的获取应用history_bars实现股票合约历史行情数据获取应用get_fundamentals实现股票基本面数据获取使用query的过滤条件完成股票数据的过滤应用scheduler定时器实现股票数据定期获取 1、 数据接口种类 获取指定行业、板块…

SAP UI5 Focus related

tap, keydown, keypresssap.ui.core.FocusHandlersap.ca.scfld.md.app.CommonHeaderFooterHelperevent new jQuery.Event(originalEvent);focusin, activate, blur, focusout, sapfocusleaveoElement._handleEvent(oEvent); 要获取更多Jerry的原创…

Consider defining a bean of type ‘com.qf.user.consumer.feign.api.UserFeignAPI‘ in your configuration

Consider defining a bean of type ‘com.qf.user.consumer.feign.api.UserFeignAPI’ in your configuration… 引导类加注解EnableFeignClients

Prime算法 C++实现

Prime算法 算法介绍: 课本实现方法: 先从最小堆说起(heap):任一结点的关键码均小于或等于它的左右子女的关键码,位于堆顶(即完全二叉树的根结点的位置)的结点的关键码是整个集合中最…

【数学】Prime-Factor Prime

Prime-Factor Prime 题目描述 A positive integer is called a "prime-factor prime" when the number of its prime factors is prime. For example, 12 is a prime-factor prime because the number of prime factors of 12223 is 3, which is prime. On the other…

Prime Factory (Training, Math)

Prime Factory (Training, Math) 题目描述 Your task is simple: Find the first two primes above 1 million, whose separate digit sums are also prime. As example take 23, which is a prime whose digit sum, 5, is also prime. The solution is the concatination of t…