1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70
|
import java.awt.DisplayMode;
import java.awt.Frame;
import java.awt.Graphics;
import java.awt.GraphicsEnvironment;
import java.awt.Point;
/**
* Classe de test pour la classe ScreenManager.
*
* @author Julien CHABLE (webmaster@neogamedev.com)
* @version 1.0 20/06/2004
*/
public class ScreenTest extends Frame {
// Notre classe qui va nous permettre de gérer notre écran
private ScreenManager sm = new ScreenManager();
// Pour faire tourner notre 'aiguille'
private double t = 0.0;
// La fonction principale
public static void main(String[] args) {
DisplayMode dm;
// Construction d'une résolution d'écran
if (args.length == 3) {
dm = new DisplayMode(
Integer.parseInt(args[0]),
Integer.parseInt(args[1]),
Integer.parseInt(args[2]),
DisplayMode.REFRESH_RATE_UNKNOWN);
} else {
// Résolution par défaut, la plus courante
dm = new DisplayMode(
800,
600,
16,
DisplayMode.REFRESH_RATE_UNKNOWN);
}
ScreenTest screen = new ScreenTest();
// Test le plein écran !
screen.testFullScreen(dm);
}
public void testFullScreen(DisplayMode dm){
sm.setFullScreen(this, dm);
try {
Thread.sleep(10000);
} catch (InterruptedException e){
// Do nothing
} finally {
sm.restoreFullScreen();
}
}
public void paint(Graphics g) {
Point centerScreen = GraphicsEnvironment
.getLocalGraphicsEnvironment().getCenterPoint();
g.drawOval(centerScreen.x / 2, centerScreen.y / 2, getWidth() / 2, getHeight() / 2);
g.drawLine(centerScreen.x, centerScreen.y, (int)(Math.cos(t) * getWidth() / 4) + centerScreen.x, (int)(Math.sin(t) * getHeight() / 4) + centerScreen.y);
t += 0.5;
try {
Thread.sleep(230);
} catch (InterruptedException e){
}
repaint();
}
} |
Partager