Not abstract and doesn't override abstract method keyReleased
Test.java:
Code:
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
//import java.awt.event.KeyListener;
public class Test extends JPanel implements KeyListener, ActionListener {
public String Text, Input, Jacob;
public JTextField User;
public JButton Enter; // Clear Text;
public TextArea moss, lol;
public JLabel Here, There;
public int Yojava;
public Test() {
Yojava = 1;
moss = new TextArea();
moss.setColumns(48);
moss.setRows(5);
moss.setEditable(false);
//int setLineWrap(true);
//moss.setFont(BLUE);
moss.setText("User 1 has entered the chatroom. Please enter your name.");
//moss.addKeyListener(this);
add(moss);
Here = new JLabel("Your chat:");
add(Here);
User = new JTextField();
User.setText("Your name here");
User.setColumns(10);
add(User);
lol = new TextArea();
lol.setColumns(40);
lol.setRows(5);
//int setLineWrap(true);
//lol.setBackground(red);
add(lol);
Enter = new JButton("Enter");
add(Enter);
Enter.addActionListener(new ButtonListener());
}
public void keyPressed(KeyEvent e) {
System.out.println("It works");
}
class ButtonListener implements ActionListener {
ButtonListener() {
}
public final void actionPerformed(ActionEvent e) {
if (e.getActionCommand().equals("Enter")) {
if (Yojava == 1) {
if (Jacob == ("Your name here")) {
moss.append("\nPlease enter your name.");
}
String Input = lol.getText();
String Jacob = User.getText();
moss.append("\n" + Jacob + ": " + Input);
lol.setText("");
Yojava ++;
revalidate();
}
else {
String Input = lol.getText();
String Jacob = User.getText();
moss.append("\n" + Jacob + ": " + Input);
lol.setText("");
revalidate();
if (Jacob == "Your name here") {
moss.append("\nPlease enter your name.");
}
}
}
}
}
}
TestApp.java:
Code:
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class TestApp extends JFrame {
private static void createAndShowGUI() {
JFrame frame = new JFrame("Test");
//TextArea lol;
JPanel panel = new JPanel(new BorderLayout());
Test testPanel = new Test();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.getContentPane().add(testPanel);
frame.setSize(330, 300);
frame.setResizable(false);
frame.setVisible(true);
}
public static void main(String[] args) {
javax.swing.SwingUtilities.invokeLater(new Runnable() {
public void run() {
try {
UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel");
} catch (UnsupportedLookAndFeelException e) {
} catch (ClassNotFoundException e) {
} catch (InstantiationException e) {
} catch (IllegalAccessException e) {
}
createAndShowGUI();
}
});
}
}
I'm receiving an error:
Code:
C:\Users\cc11rocks\Documents\JavaCrap>javac Test.java
Test.java:5: Test is not abstract and does not override abstract method keyRelea
sed(java.awt.event.KeyEvent) in java.awt.event.KeyListener
public class Test extends JPanel implements KeyListener, ActionListener
{
^
1 error
C:\Users\cc11rocks\Documents\JavaCrap>javac TestApp.java
.\Test.java:5: Test is not abstract and does not override abstract method keyRel
eased(java.awt.event.KeyEvent) in java.awt.event.KeyListener
public class Test extends JPanel implements KeyListener, ActionListener
{
^
1 error
The reason for "javac" ing both is to show you the problem is with Test.java, specifically the line:
Code:
public class Test extends JPanel implements KeyListener, ActionListener {
What's is wrong and how can I fix it?
Thanks,
cc11rocks