我正在制作一个简单的swing应用程序,我想为我的组件添加一些标题边框。我的两个JScrollPanes上的边框都可以正常工作,但JTextField和JButtons没有。请允许我分享一些屏幕截图。
我只有简单的代码。即
TitledBorder border = new TitledBorder("Border");
convert.setBorder(border); //convert is the JButton
我不明白为什么它不适用于一件事,而是为另一件事工作。任何人都可以帮助我吗?
答案 0 :(得分:1)
JTextField和JButton都已经使用了Border。因此标题边框有效,但它会更改组件的外观,因为您将丢失默认边框。
我也同意通常你不会将TitledBorder用于单个组件,但我想你可以尝试使用CompoundBorder来看它是否更好看:
CompoundBorder border = new CompoundBorder(titledBorder, button.getBorder());
button.setBorder( border );
但是上述方法的问题是,当您按下/释放按钮上的鼠标时,您将失去动态重新绘制边框。