我希望获取并修改文本区域内包含的文本与文本区域边框之间的像素数。提供更具描述性的视觉效果:
其中蓝线的长度是我想要的。当我在我的应用程序中收到文本区域的填充和边距时,我得到了0px。我假设这是TextArea相对于外部的填充/边距,而不是相对于Ttext区域的内部。
非常感谢。
答案 0 :(得分:0)
在java
设置insets
的{{1}},您可以使用textarea
。
public void setMargin(Insets m)
设置文本之间的边距 组件的边界及其文本。文本组件的默认边框 object将使用此值来创建适当的边距。但是,如果一个 非默认边框是在文本组件上设置的,它是Border 对象有责任创建适当的边距空间(否则 这个属性实际上会被忽略)。这导致重绘 组件。 PropertyChange事件(" margin")将发送给所有人 听众。
参数: m - 边框与文字之间的空格
例如:
setMargin()
更多关于insets和setMargin()。
或者另一种方法是添加JTextArea txtArea = new JTextArea("Hello world!");
txtArea.setMargin( new Insets(15,15,15,15) );
,然后像这样设置compound border
:
insets
请参阅this answer。