Avatar billede funkyloonie Nybegynder
07. marts 2003 - 14:54 Der er 7 kommentarer og
1 løsning

Komponent ikke vist i min applet

hej. mit problem er at jeg tilføjer en JButton til mit ImagePanel. ImagePanel er et panel med billede som baggrund. jbutton'en bliver tilføjet men man ser den først når man klikker på området som setbounds har afmærket til den. Hvad gør jeg galt? jeg har følgende kode:

import java.awt.*;
import javax.swing.*;

public class BoardApplet extends javax.swing.JApplet {

   
    public BoardApplet() {       
        initComponents();
    }

    private void initComponents() {

    }

    public void init()
    {
        Image img = this.getImage(this.getCodeBase(), "img/pc.gif");
        this.getContentPane().setLayout(null);
       
        ImagePanel imagePanel = new ImagePanel(img);
        imagePanel.setBounds(25,25,484,455);
        imagePanel.setLayout(null);
        JButton b;
        imagePanel.add(b = new JButton("JKJK"));
       
        b.setBounds(25,50,100,100);       
        this.getContentPane().add(imagePanel);
       
               
    }
 
}


import javax.swing.*;
import java.awt.*;
import java.awt.image.*;

public class ImagePanel extends JPanel {
    private Image img;
       
    /** Creates a new instance of ImagePanel */
    public ImagePanel(Image img) {             
        this.img = img;             
    }
   
    public void paint(Graphics g)
    {       
        if(img !=null)
        {           
            g.drawImage(img,0,0,this);
        }       
    }
   
    public int getWidth() {
        return new ImageIcon(img).getIconWidth();       
    }
   
    public int getHeight() {
        return new ImageIcon(img).getIconHeight();
    }
   
    public Image getImage() {
        return img;
    }
   
    public void setImage(Image img) {
        this.img = img;
    }
}
Avatar billede kube Nybegynder
07. marts 2003 - 16:20 #1
hva hvis du sætter
JButton b;
imagePanel.add(b = new JButton("JKJK"));
til sidst i init
Avatar billede kube Nybegynder
07. marts 2003 - 16:21 #2
altså efter du har addét din
this.getContentPane().add(imagePanel);
Avatar billede funkyloonie Nybegynder
07. marts 2003 - 16:30 #3
virker ikke men jeg har løst mit problem ved at bruge JLayerPane :)
Avatar billede Martin Hansen Nybegynder
21. oktober 2003 - 14:19 #4
jeg ved godt det er længe tiden dette blev skrevet, men du må gerne ligge svaret her ud..  Da jeg sidder i samme problem, men hvad er JLayerPane?? Jeg er lige begyndt på applets..  pls..
Avatar billede funkyloonie Nybegynder
21. oktober 2003 - 14:24 #5
arbejder ikke i det firma mere så jeg har ikek sourcen. men pointen med jlayerpane er at noget ligegr foran andet i panelet, så hvis du skal hae et billede som baggrund lægger du det i lag 1 mens jbuttonen lægges i lag 0, hvis ikke det er omvendt...
Avatar billede Martin Hansen Nybegynder
21. oktober 2003 - 14:46 #6
Okay, men hvordan benytter jeg JLayerPane?
Avatar billede funkyloonie Nybegynder
21. oktober 2003 - 14:57 #7
Avatar billede Martin Hansen Nybegynder
21. oktober 2003 - 15:01 #8
thx..
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester