Anfängerfragen von Takeru

Status
Nicht offen für weitere Antworten.

Takeru

Mitglied
hi 😀

eigentlich versuche ich immer alles mögliche bevor ich mich an andere wende, aber ich sehe keinen ausweg...
Java Homepage
Bin gerade hier bei denn Ereignisorientiertes Programmieren hab da alles eigentlich verstanden nur nicht das mit dem repaint();

Dann bin ich halt mal weiter gegangen und bin wieder an meinen Grenzen gestossen
Code:
import javax.swing.*;
import java.awt.*;

class TestCanvas extends Canvas
{   public void paint (Graphics g)
    {   Dimension d=getSize();
        int w=d.width,h=d.height;
        g.drawLine(0,0,w-1,h-1);
        g.drawLine(0,h-1,w-1,0);
        g.drawRect(0,0,w-1,h-1);
    }
}

public class Test
{   public static void main (String args[])
    {   JFrame F=new JFrame();
        F.setTitle("Test");
        F.setSize(300,300);
        F.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        F.add(new TestCanvas());
        F.setVisible(true);
    }
}

Dieser Code zeigt bei meinen Pogramm "Eclipse" beim "class TestCanvas extends... " beim TestCanvas so ein gelber eckige linie
beim nächsten Beispiel ist das gleiche Proplem... könnt ihr vll mir helfen?

Danke im Vorraus 🙂 !

LG
Takeru
 
müsstes so was einfügen, dann ists weg

Code:
private static final long serialVersionUID = 1L;

oder auf das gelbe Dingens links klicken und wählen es machen zu lassen ;-)
 
Code:
import javax.swing.*;
import java.awt.*;

class TestCanvas extends Canvas
{
	private static final long serialVersionUID = 1L;
	{
	}
	public void paint (Graphics g)
    {   
        Dimension d=getSize();
        int w=d.width,h=d.height;
        g.drawLine(0,0,w-1,h-1);
        g.drawLine(0,h-1,w-1,0);
        g.drawRect(0,0,w-1,h-1);
    }
}

public class test
{   public static void main (String args[])
    {   JFrame F=new JFrame();
        F.setTitle("Test");
        F.setSize(300,300);
        F.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        F.add(new TestCanvas());
        F.setVisible(true);
    }
}

Dieser Code hat jetzt folgendes Problem: Will ich es abspielen(Eclipse SDK) dann funkt es auch nicht. obwohl bei denn Problems keine dabei stehen :?

Diese Proplem steht dann bei der Console:

Code:
java.lang.Error: Do not use javax.swing.JFrame.add() use javax.swing.JFrame.getContentPane().add() instead
	at javax.swing.JFrame.createRootPaneException(JFrame.java:403)
	at javax.swing.JFrame.addImpl(JFrame.java:429)
	at java.awt.Container.add(Container.java:223)
	at close.main(close.java:27)
 
Hoi,

ja dann mach es doch, wie es die fehlermeldung sagt 🙂
Du bist mir einer ... 😀

Code:
public class test
{   public static void main (String args[])
    {   JFrame F=new JFrame();
        F.setTitle("Test");
        F.setSize(300,300);
        F.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        F.getContentPane().add(new TestCanvas());
        F.setVisible(true);
    }
}

Ach...und nächste mal, denk Dir mal einen besseren titel aus, ja?
"Anfängerproblem...." sagt mal gar nichts

greetz
SLi
 
um erlich gesagt habe ich immer nur die Error Anzeigen als Depremierend angesehen ohne lösung also hab ich sie auch nie gelesen xD aber wis so ausschaut stimmt es nicht! Danke 😀
 
Status
Nicht offen für weitere Antworten.

Neue Themen


Zurück
Oben