如何使JTextField(Eclipse Window Builder)只读

时间:2016-12-29 10:09:54

标签: java eclipse swing windowbuilder

我想让我的JTextfield不可见且只读,但必须在窗口框架中显示该值。我在Eclipse中使用窗口构建器。

JLabel lblLabel1 = new JLabel("Default DITA-OT File :");
lblLabel1.setBounds(10, 79, 123, 14);
frmPdfPublisher.getContentPane().add(lblLabel1);

JSeparator separator = new JSeparator();
separator.setBounds(10, 140, 414, 2);
frmPdfPublisher.getContentPane().add(separator);

JSeparator separator_1 = new JSeparator();
separator_1.setBounds(10, 257, 414, 2);
frmPdfPublisher.getContentPane().add(separator_1);

textField_1 = new JTextField();
textField_1.setBounds(138, 76, 286, 20);
frmPdfPublisher.getContentPane().add(textField_1);
textField_1.setColumns(10);
textField_1.setVisible(false);

1 个答案:

答案 0 :(得分:2)

如果你想让它只读JLable是做这项工作的更好选择。

但是,如果您想使用JTextfield而不是将文本字段作为私有成员,并使用方法将文本字段隐藏起来。

class Example {

private JTextField tf;

public void hideTextField(){
    tf.setVisible(false);
} }

更改文本字段的颜色并使其与Panel或框架的颜色相同。

setBackground(Color.white);

并删除边框通过重写setBorder方法或通过传递" null"到

setBorder(BorderFactory.createLineBorder(Color.white));

or

txt.setBorder(new LineBorder(Color.white,0));