mas*_*eth 0 java swing renderer jtextfield
我需要创建看起来像JTextField的组件(相同的边框,阴影,圆角等),但用于显示带文本的图形.
是否可以为JTextField创建渲染器之类的东西?或者基于JPanel创建自定义组件,但是如何强制它看起来与JTextField相同
另一个复杂因素是应用程序将在不同的LAF上运行.
你有什么想法 ?
使用JTextPane
或JEditorPane
可以处理样式文本(带有嵌入图标).有关更多详细信息,请参见如何使用编辑器窗格和文本窗格.
我需要在不同的外观和感觉中创建看起来像JTextField的自定义组件,使用JTextPane或JEditorPane将更改边框着色和组件.
真?下一个屏幕截图显示了所有3.哪个是哪个?
(通过查看第1段代码不会作弊.)
至于PLAF.给我看一个PLAF,它们之间有明显的区别.
import java.awt.*;
import javax.swing.*;
class DistinguishThese {
public void initGui() {
JPanel gui = new JPanel(new GridLayout(3,0,2,2));
gui.add(new JTextField(5));
gui.add(new JScrollPane(new JEditorPane()));
gui.add(new JScrollPane(new JTextPane()));
JOptionPane.showMessageDialog(null, gui);
}
public static void main(String[] args) {
SwingUtilities.invokeLater( new Runnable() {
public void run() {
DistinguishThese dt = new DistinguishThese();
dt.initGui();
}
});
}
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
4487 次 |
最近记录: |