如何用Java实现图形的放大和缩小?
要用Java实现图形的放大和缩小,可以使用以下代码:
import java.awt.*;import java.awt.event.*;import javax.swing.*;//实现矩形在规定时间间隔里循环放大缩小;
public class Test02 extends JFrame implements Runnable{ static int w = 0,h = 0; //w:矩形宽度,h:矩形高度 ;
boolean flag = false;//false:放大,true:缩小 public Test02(){ this.setSize (500,500); this.setVisible (true); this.setTitle (w+","+h); this.setLocationRelativeTo (this); this.setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE); } public void paint(Graphics g){ int width = getWidth();
//窗口宽度 int height = getWidth(); //窗口高度 g.setColor (Color.WHITE); //设置画笔颜色 g.fillRect (0,0,width,height); //填充窗口 int x = (width-w)/2; //x:矩形左上角横坐标 int y = (height-h)/2; //y:矩形左上角纵坐标 g.setColor (Color.BLUE); //同上... g.drawRect (x,y,w,h);
//画矩形,实心矩形为fillRect(....) g.setColor (Color.RED); //同上... g.drawOval (x,y,w,h); //画椭圆 setTitle (w+","+h); //以矩形宽和高来设置窗口标题 } public void setSize(){ float n = getWidth()/getWidth(); if(w==0||h==0) flag = false;
if(w==getWidth()||h==getWidth()) flag = true; if(!flag){ w+=1; h+=n; } if(flag){ w-=1; h-=n; } } public void run(){ while(true){ try{ Thread.sleep (5);//间隔 }catch(InterruptedException ie){} setSize(); repaint(); } } public static void main(String[] args){ Test02 t = new Test02(); Thread th = new Thread(t); th.start(); }}
Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程 。
Java具有简单性、面向对象、分布式、健壮性、安全性、平台独立与可移植性、多线程、动态性等特点。Java可以编写桌面应用程序、Web应用程序、分布式系统和嵌入式系统应用程序等。