gpt4 book ai didi

java - JTextPane最后一行字体较小

转载 作者:行者123 更新时间:2023-11-30 03:30:56 24 4
gpt4 key购买 nike

我对 JTextPane 有疑问。如果我在最后一行向 JTextPane 写入一些内容,则最后一行的大小与之前的其他行不同。按 ENTER 后,行会向上移动一点。我发现,这种行为只是为了防止字体大小小于 12 时的情况。最后一行不能小于某个大小。你知道如何消除这种奇怪的行为吗?

enter image description here

这是我的 SSCCE:

JFrame frame = new JFrame();
frame.setSize(350, 300);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

JTextPane pane = new JTextPane();

MutableAttributeSet attrs = new SimpleAttributeSet();
StyleConstants.setFontSize(attrs, 11);
pane.setCharacterAttributes(attrs, false);

frame.add(pane);
frame.setVisible(true);

最佳答案

那是因为最后一段的属性。它具有默认属性,默认字体大小为 12。要修复此问题,请尝试将字符属性应用于最后一个\n 字符。

StyledDocument doc=(StyledDocument)pane.getDocument();
doc.setCharacterAttributes(0, doc.getLength()+1, attrs, false);

是的。包含文档末尾最后一个字符的长度+1。

关于java - JTextPane最后一行字体较小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29065362/

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