gpt4 book ai didi

java - 如何限制SWT中文本字段的大小?

转载 作者:行者123 更新时间:2023-12-02 03:01:09 24 4
gpt4 key购买 nike

我有一个 Text 控件和与其关联的 GridLayout

当我创建它时,会创建一个具有一定宽度的文本字段。当我在文本字段中输入文本并保存时,我将更新模型。同样,如果我关闭该特定 View 并再次打开它,文本字段将按照之前输入的文本宽度进行扩展。

如何限制这一点并为文本框提供特定的宽度,使其不会进一步扩展?

最佳答案

使用 GridDatawidthHint 字段指定控件宽度。

最简单的情况是:

Text text = new Text(....);

GridData data = new GridData(SWT.BEGINNING, SWT.CENTER, false, false);

data.widthHint = 100; // Some width

text.setLayoutData(data);

如果您在从 Dialog 派生的类中执行此操作,则可以使用

data.widthHint = convertWidthInCharsToPixels(10);  // Some number of characters

指定字符宽度。

在对话框之外您可以使用:

GC gc = new GC(text);

gc.setFont(text.getFont());

FontMetrics fontMetrics = gc.getFontMetrics();

data.widthHint = fontMetrics.getAverageCharWidth() * chars;

gc.dispose();

关于java - 如何限制SWT中文本字段的大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42344231/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com