java图形化界面还是有很多内容要学习的,可以参考 如下实例:
public class Test extends JFrame{MyPanel mp=null
public static void main(String[] args){
// TODO Auto-generated method stub
Test jf= new Test()
}
public Test(){
mp=new MyPanel()
this.add(mp)
//设置标题
this.setTitle("绘图")
//设置窗体大小
this.setSize(400, 300)
//设置窗体的位置
this.setLocation(100,100)
//限制窗体的大小
this.setResizable(false)
//关闭窗体时,同时退出java虚拟机
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE)
//显示窗体
this.setVisible(true)
}
}
//定义一个MyPanel(我自己的面板,用于绘图和实现绘图区域)
class MyPanel extends JPanel
{
//覆盖JPanel的paint方法
//Graphics是绘图的重要类,可以把它理解成一只画笔
public void paint(Graphics g)
{
//1。调用父类函数完成初始化
super.paint(g)
// //画圆
// g.drawOval(100, 100, 20, 20)
// //画直线
// g.drawLine(50, 150,150, 200)
// //画矩形边框
// g.drawRect(150, 150, 30, 40)
//
// //设置颜色。默认为黑色
// g.setColor(Color.blue)
// //填充矩形
// g.fillRect(10, 10, 20, 30)
//画弧形
g.drawArc(200,10, 100,150, 120,-80)
//在面板上画图片
Image im=Toolkit.getDefaultToolkit().getImage(Panel.class.getResource("图片路径"))
//显示图片
g.drawImage(im, 10, 10,200,180,this)
//画字
g.setColor(Color.red)
g.setFont(new Font("华文彩云",Font.BOLD,20))
g.drawString("要写的字", 80,220)
}
}
要用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应用程序、分布式系统和嵌入式系统应用程序等。