JPanel vs Border

SirWayne

Erfahrenes Mitglied
Hallo zusammen,

sobald ich mein Border ändere wird die paintComponent() in meinem JPnale nicht mehr ausgeführt

Code:
public class MEDBorder extends BevelBorder 
{ 

    public MEDBorder() 
    { 
        super(0); 
    } 

    public void paintBorder(Component c, Graphics g, int x, int y, int width, int height) 
    { 
        if(c instanceof JComponent) 
            ((JComponent)c).setOpaque(false); 
        Graphics2D g2 = (Graphics2D)g; 
        g2.setPaint(new GradientPaint(0.0F, 0.0F, Color.white, width, height, c.getBackground(), false)); 
        g2.fillRect(0, 0, width, height); 
        super.paintBorder(c, g, x, y, width, height); 
    } 
}


Code:
public class MEDJPanel extends JPanel 
{ 
   public MEDJPanel() 
   {    
      super(); 
   init();    
   } 
   public void init() 
   { 
               setBorder(new MEDBorder()); 
               setVisible(true); 
   } 

    
   public void paintComponent(Graphics g) { 
       
         super.paintComponent(g); 
   Graphics2D g2= (Graphics2D) g; 
   Rectangle2D recht= new Rectangle2D.Double(0,0,200,200); 
   g2.setColor(Color.YELLOW); 
   g2.draw3DRect((int)recht.getX(), (int)recht.getY(),(int)recht.getHeight(),(int)recht.getWidth(),false); 
   }


sobald ich setBorder() weglasse funktioniert es
 

Neue Beiträge

Zurück