To let the user decide to enable such an option is OK. However I think possibly there still exists a performance bug. The test case below causes an avererage of 5% CPU utilization for opaque window and 50% CPU utilization for non-opaque windows even if the animated panel is placed on an opaque panel (tested on the older machine).
[code] public class NonOpaqueWindowPerformanceTest extends JFrame { public NonOpaqueWindowPerformanceTest() { super(); setLayout(new BorderLayout()); JPanel p = new JPanel(); p.setBorder(new LineBorder(Color.GREEN)); p.setBackground(Color.RED); p.setOpaque(true); final JPanel p2 = new JPanel(); p2.setOpaque(true); p2.setBorder(new LineBorder(Color.blue)); p2.setPreferredSize(new Dimension(300,300)); p.add(p2); add(p); //remarking the following line means 90% less CPU-utilization on Windows XP setWindowNonOpaque(this); setTitle(getClass().getSimpleName()); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setSize(800, 600); setLocationRelativeTo(null); setVisible(true); new Thread(){ public void run() { while (true) { try { Thread.sleep(50); } catch (InterruptedException e) { e.printStackTrace(); } EventQueue.invokeLater(new Runnable() { public void run() { Color color = new Color(new Random().nextInt(0xFFFFFF)); p2.setBackground(color); } }); } } }.start(); } private void setWindowNonOpaque(Window w) { try { Class<?> c = Class.forName("com.sun.awt.AWTUtilities"); Method m = c.getMethod("setWindowOpaque", Window.class, boolean.class); m.invoke(null, w, false); } catch (Exception e) { e.printStackTrace(); } } public static void main(String[] args) throws Exception { EventQueue.invokeLater(new Runnable(){ public void run() { JFrame.setDefaultLookAndFeelDecorated(true); new NonOpaqueWindowPerformanceTest(); } }); } } [/code] [Message sent by forum member 'wzberger' (wzberger)] http://forums.java.net/jive/thread.jspa?messageID=287511 =========================================================================== To unsubscribe, send email to [EMAIL PROTECTED] and include in the body of the message "signoff JAVA2D-INTEREST". For general help, send email to [EMAIL PROTECTED] and include in the body of the message "help".