Seltsames JLabel-Problem

icecreamman27

Grünschnabel
Tach Experten!

Ich möchte ein JLabel zu einem JComponent hinzufügen, was leider nicht funktioniert. Gleichzeitig kann ich einen JButton problemlos zum selben JComponent hinzufügen.

So ungefähr sieht mein Code aus:

Code:
public class Fenster extends JFrame
{

    public Fenster()
    {
        JTabbedPane tp = new JTabbedPane();
        JPanel p = new JPanel();
        tp.addTab("Reiter 1", p);

        JComponent zeichenflaeche = new JComponent();
        zeichenflaeche.setLayout(null);

        tb.setComponentAt(0, zeichenflaeche);

        JButton b = new JButton("Test");
        b.setBounds(10,10,100,100);
        zeichenfläche.add(b);

        JLabel label = new JLabel("Test");
        label.setBounds(200, 200, 300, 300);
        zeichenflaeche.add(label);

        zeichenflaeche.revalidate();

        setVisible(true);
    }

    public static void main(String argv[])
    {
        new Fenster();
    }
}

Zwar wird der Button nicht sofort angezeigt sondern erst nachdem ich den Mauszeiger an die entsprechende Position bewege. Von dem JLabel ist jedoch seltsamerweise gar nichts zu sehen.

Weiß hier vielleicht jemand, was ich falsch mache?

Danke im Voraus!
 
Tach Experten!

Ich möchte ein JLabel zu einem JComponent hinzufügen, was leider nicht funktioniert. Gleichzeitig kann ich einen JButton problemlos zum selben JComponent hinzufügen.

So ungefähr sieht mein Code aus:

Code:
public class Fenster extends JFrame
{

    public Fenster()
    {
        JTabbedPane tp = new JTabbedPane();
        JPanel p = new JPanel();
        tp.addTab("Reiter 1", p);

        JComponent zeichenflaeche = new JComponent();
        zeichenflaeche.setLayout(null);

        tb.setComponentAt(0, zeichenflaeche);

        JButton b = new JButton("Test");
        // b.setBounds(10,10,100,100);  hab keine ahnung was du damit moechtest
        b.setBounds(0, 0, 100, 100); // wenn der button 100x100 sein soll
        b.setLocation(10, 10); // wenn er an die position 10, 10 soll
        b.setVisible(true); // wenn du moechtest dass er angezeigt wird.
        zeichenfläche.add(b);

        JLabel label = new JLabel("Test");
        // gleiches gilt natuerlich hier fuer den label
        label.setBounds(200, 200, 300, 300);
        zeichenflaeche.add(label);

        zeichenflaeche.revalidate();

        setVisible(true);
    }

    public static void main(String argv[])
    {
        new Fenster();
    }
}

Zwar wird der Button nicht sofort angezeigt sondern erst nachdem ich den Mauszeiger an die entsprechende Position bewege. Von dem JLabel ist jedoch seltsamerweise gar nichts zu sehen.

Weiß hier vielleicht jemand, was ich falsch mache?

Danke im Voraus!

etwas anderes ist mir nicht bekannt.
ist ja schon monate her, ist die frage ob du es noch brauchst. aber es koennte jemand lesen und sieht dann wenigstens die antwort.
 
Zurück