Får ett konstigt kompileringsfel som jag inte lyckas komma förbi, felmedelandet finns längst ner. Hur kommer jag förbi det? Vill göra en ruta med ett tidtagarur. Hej Precis som B# säger så implementerar du inte actionPerformed eftersom java är case-sensitive.Konstigt kompileringsfel
/Robin
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.awt.event.ActionEvent.*;
abstract class Timer1a extends JFrame implements Runnable, ActionListener{
long starttid=0, sluttid=0;
boolean tickar=false;
JButton start;
JButton stopp;
JLabel display;
public Timer1a(){
setSize(328, 274);
setLocation(50, 50);
setTitle("Meny");
}
public void init(){
start=new JButton("Start");
stopp=new JButton("Stopp");
start.addActionListener(this);
stopp.addActionListener(this);
add(start);
add(stopp);
add(display);
display=new JLabel("00:00:00");
Font font=new Font("Courier",Font.BOLD,35);
display.setFont(font);
add(display);
}
public void start(){
Thread t=new Thread(this);
t.start();
}
public void ActionPerformed(ActionEvent ae){
if(ae.getSource()==start){
starttid=System.currentTimeMillis();
tickar=true;
}
if(ae.getSource()==stopp){
sluttid=System.currentTimeMillis();
tickar=false;
}
}
public void run(){
while(true){
Thread.yield();
if(tickar){
long nu=System.currentTimeMillis();
long millis=nu-starttid;
long hundradelar=(millis/10)%100;
long sekunder=(millis/1000)%60;
long minuter=(millis/6000)%60;
//display.setText(minuter+":"+sekunder+":"+hundradelar);
String hStr,sStr,mStr;
if(hundradelar<10) hStr="0"+hundradelar;
else hStr=""+ hundradelar;
if(sekunder<10) sStr="0"+sekunder;
else sStr=""+ sekunder;
if(minuter<10) mStr="0"+ minuter;
else mStr="" + minuter;
display.setText(mStr+":"+sStr+":"+hStr);
}
}
}
public static void main(String[] args){
Timer1a fönster = new Timer1a();
fönster.show();
}
}
/*C:\Exjobb\Timer>javac Timer1a.java
Timer1a.java:8: Timer1a is not abstract and does not override abstract method ac
tionPerformed(java.awt.event.ActionEvent) in java.awt.event.ActionListener
class Timer1a extends JFrame implements Runnable, ActionListener{
^
1 error*/Sv: Konstigt kompileringsfel
Felmeddelandet säger attt actionPerformed inte är implemeterad och kollar du i koden så har du en metod som heter Action... med stort A.
HTH
/FaldoSv: Konstigt kompileringsfel
Man kan alltså ha en metod som heter foo() och en annan Foo() som är helt olika även om det inte är att rekommendera.
/Per