不过还是有错,什么原因呢? Text.java:13: addDocumentListener(javax.swing.event.DocumentListener) in javax.s wing.text.Document cannot be applied to (TextField1) JTextField1.getDocument().addDocumentListener(this); ^ Text.java:29: cannot resolve symbol symbol : method getPassword () location: class javax.swing.JTextField System.out.println(JPasswordField1.getPassword()); ^ 2 errors
import java.awt.*; import java.awt.event.*; import javax.swing.*; import javax.swing.event.*;class TextField1 extends JTextField implements DocumentListener ////////////////// { public TextField1() { JTextField1=new JTextField("hi",30); JPasswordField1=new JPasswordField(null,18); add(JTextField1); add(JPasswordField1); JTextField1.getDocument().addDocumentListener(this); } public void insertUpdate(DocumentEvent e) { showMsg(); } public void changedUpdate(DocumentEvent e)///////////////////////////// { showMsg(); } public void removeUpdate(DocumentEvent e) { } private void showMsg() { System.out.println(JTextField1.getText().trim()); System.out.println(JPasswordField1.getPassword()); } private JTextField JTextField1; private JPasswordField JPasswordField1;////////////////////////// } class TextFrame extends JFrame { public TextFrame() { setSize(300,200); setLocation(300,300); setTitle("文本域"); addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent e) { System.exit(0); } }); TextField11=new TextField1(); getContentPane().add(TextField11,"South");////////////////////// } private TextField1 TextField11; } public class Text { public static void main(String[] arg) { JFrame textFrame1=new TextFrame(); textFrame1.setVisible(true); } } ////////////为改的地方
谢谢楼上那位大哥,我修改后的代码如下,不过为什么只能显示出一个文本域,不能显示密码域,为什么? import java.awt.*; import java.awt.event.*; import javax.swing.*; import javax.swing.event.*; class TextField1 extends JTextField implements DocumentListener { public TextField1() { JTextField1=new JTextField("hi",5); JPasswordField1=new JPasswordField(null,5); add(JTextField1); add(JPasswordField1); JTextField1.getDocument().addDocumentListener(this); } public void insertUpdate(DocumentEvent e) { showMsg(); } public void changedUpdate(DocumentEvent e) { showMsg(); } public void removeUpdate(DocumentEvent e) { } private void showMsg() { System.out.println(JTextField1.getText().trim()); System.out.println(JPasswordField1.getPassword()); } private JTextField JTextField1; private JPasswordField JPasswordField1; } class TextFrame extends JFrame { public TextFrame() { setSize(300,200); setLocation(300,300); setTitle("文本域"); addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent e) { System.exit(0); } }); TextField11=new TextField1(); getContentPane().add(TextField11,"South"); } private TextField1 TextField11; } public class Text { public static void main(String[] arg) { JFrame textFrame1=new TextFrame(); textFrame1.setVisible(true); } }
Text.java:13: addDocumentListener(javax.swing.event.DocumentListener) in javax.s
wing.text.Document cannot be applied to (TextField1)
JTextField1.getDocument().addDocumentListener(this);
^
Text.java:29: cannot resolve symbol
symbol : method getPassword ()
location: class javax.swing.JTextField
System.out.println(JPasswordField1.getPassword());
^
2 errors
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;class TextField1 extends JTextField implements DocumentListener //////////////////
{
public TextField1()
{
JTextField1=new JTextField("hi",30);
JPasswordField1=new JPasswordField(null,18);
add(JTextField1);
add(JPasswordField1);
JTextField1.getDocument().addDocumentListener(this);
}
public void insertUpdate(DocumentEvent e)
{
showMsg();
}
public void changedUpdate(DocumentEvent e)/////////////////////////////
{
showMsg();
}
public void removeUpdate(DocumentEvent e)
{
}
private void showMsg()
{
System.out.println(JTextField1.getText().trim());
System.out.println(JPasswordField1.getPassword());
}
private JTextField JTextField1;
private JPasswordField JPasswordField1;//////////////////////////
}
class TextFrame extends JFrame
{
public TextFrame()
{
setSize(300,200);
setLocation(300,300);
setTitle("文本域");
addWindowListener(new WindowAdapter()
{
public void windowClosing(WindowEvent e)
{
System.exit(0);
}
});
TextField11=new TextField1();
getContentPane().add(TextField11,"South");//////////////////////
}
private TextField1 TextField11;
}
public class Text
{
public static void main(String[] arg)
{
JFrame textFrame1=new TextFrame();
textFrame1.setVisible(true);
}
}
////////////为改的地方
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;
class TextField1 extends JTextField implements DocumentListener
{
public TextField1()
{
JTextField1=new JTextField("hi",5);
JPasswordField1=new JPasswordField(null,5);
add(JTextField1);
add(JPasswordField1);
JTextField1.getDocument().addDocumentListener(this);
}
public void insertUpdate(DocumentEvent e)
{
showMsg();
}
public void changedUpdate(DocumentEvent e)
{
showMsg();
}
public void removeUpdate(DocumentEvent e)
{
}
private void showMsg()
{
System.out.println(JTextField1.getText().trim());
System.out.println(JPasswordField1.getPassword());
}
private JTextField JTextField1;
private JPasswordField JPasswordField1;
}
class TextFrame extends JFrame
{
public TextFrame()
{
setSize(300,200);
setLocation(300,300);
setTitle("文本域");
addWindowListener(new WindowAdapter()
{
public void windowClosing(WindowEvent e)
{
System.exit(0);
}
});
TextField11=new TextField1();
getContentPane().add(TextField11,"South");
}
private TextField1 TextField11;
}
public class Text
{
public static void main(String[] arg)
{
JFrame textFrame1=new TextFrame();
textFrame1.setVisible(true);
}
}