28/01/08 8:36
netarrow
ho provato ma non va con WindowListener, bisogna usare WindowFocusListener:
import java.awt.*; import java.awt.event.*; import javax.swing.*; public class ShowColors extends JFrame implements WindowFocusListener { public ShowColors() { setTitle("Using colors"); setSize(500,150); setResizable(false); addWindowFocusListener(this); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setLocationRelativeTo(null); setVisible(true); } public void windowGainedFocus(WindowEvent e) { repaint(); } public void windowLostFocus(WindowEvent e) { /* quanto perde il focus non fare nulla */ } public void paint(Graphics g) { super.paint(g); g.setColor(new Color(255,0,0)); g.fillRect(25,35,100,30); g.drawString("Current RGB: "+g.getColor(),130,50); g.setColor(new Color(0.0f,1.0f,0.0f)); g.fillRect(25,60,100,30); g.drawString("Current RGB: "+g.getColor(),130,75); g.setColor(Color.BLUE); g.fillRect(25,85,100,30); g.drawString("Current RGB: "+g.getColor(),130,100); Color color = Color.MAGENTA; g.setColor(color); g.fillRect(25,110,100,25); g.drawString("RGB values: "+color.getRed()+", "+color.getGreen()+", "+color.getBlue(),130,125); } public static void main(String[] args) { ShowColors finestra = new ShowColors(); } }
Ultima modifica effettuata da netarrow 28/01/08 8:36
aaa