2014-02-27 72 views
12

我有一個繪製一個矩形一個非常簡單的Java程序,但是當我仔細檢查所呈現的形狀,我看到了兩個額外的像素不應該在那裏...繪製矩形在Java中顯示像素異常

enter image description here 您可以在左下角看到一個額外的像素,在右下角看到一個像素。

我正在使用Windows 7 Professional 64位使用JDK 1.8.0。下面是該程序...

import java.awt.Graphics; 
    import java.io.IOException; 
    import javax.swing.JFrame; 
    import javax.swing.JPanel; 

    public class JavaBug { 

    public JavaBug() throws IOException { 
     JFrame frame = new JFrame();   
     frame.add(new JPanel() { 
     private static final long serialVersionUID = 1L; 

       public void paintComponent(Graphics g) { 
        super.paintComponent(g); 
        g.drawRect(50, 50, 20, 20); 
       } 
      }); 

      frame.setSize(400, 300); 
      frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
      frame.setVisible(true); 
     } 

     public static void main(String [] args) throws IOException { 
      new JavaBug(); 
     } 
    } 
+1

也許包含截圖? – Zong

+0

這很難看,但如果你放大它,像素脫穎而出 – Constantin

+1

你使用什麼操作系統和Java版本? Windows 7,Java 6和7 - 沒有問題 – MadProgrammer

回答

1

對於萬一有人回答的緣故遇到這個問題

的問題似乎是與Java 8預發佈版本。此代碼可與Java 7一起正常工作。

注意:此結論摘自評論部分,我沒有對答案做出貢獻。 :-)

1

確認。我測試過了。這是一個Java 8的錯誤。

+0

謝謝,這是唯一可以確認的錯誤,因爲其他人報告說他們看不到問題。 – Constantin