Java 如何设置jTextField剪辑超长文本的位置?

Java 如何设置jTextField剪辑超长文本的位置?,java,swing,Java,Swing,我有一个固定大小的jTextField(用于特定的显示要求),但它填充了可变长度的文本。文本长度很少超过框允许的长度(对于特定的类型大小)。发生这种情况时,文本字段将剪辑显示文本的开头,仅显示最后一个适合的部分。我宁愿剪辑结尾并显示开头部分 我想在jTextField中这样做,而不是试图自己计算它,因为我们支持可变大小的类型以及不同的字体,这使得根据长度计算剪裁变得很麻烦 该字段仅显示(可编辑为false)。我原以为设置scrollOffset值就可以做到这一点,但似乎没有效果。我还尝试了sel

我有一个固定大小的
jTextField
(用于特定的显示要求),但它填充了可变长度的文本。文本长度很少超过框允许的长度(对于特定的类型大小)。发生这种情况时,文本字段将剪辑显示文本的开头,仅显示最后一个适合的部分。我宁愿剪辑结尾并显示开头部分

我想在
jTextField
中这样做,而不是试图自己计算它,因为我们支持可变大小的类型以及不同的字体,这使得根据长度计算剪裁变得很麻烦


该字段仅显示(可编辑为false)。我原以为设置
scrollOffset
值就可以做到这一点,但似乎没有效果。我还尝试了
selectionStart
值,因为我可以通过鼠标选择包含的文本来移动剪辑区域。但是,当以编程方式完成时,这似乎也没有任何作用。

您可以设置
jTextField的插入符号位置:

jTextField.setCaretPosition(0);
然而,需要注意的是:

1)必须在填充文本后执行此操作


2)(这可能不会影响您)如果用户单击文本字段,它将自动将位置移动到末尾,即您不希望的方式。

您可以设置
jTextField
的插入符号位置:

jTextField.setCaretPosition(0);
然而,需要注意的是:

1)必须在填充文本后执行此操作

2)(这可能不会影响您)如果用户单击文本字段,它将自动将位置移动到末尾,即您不希望的方式