標籤:extend observer 介面 als log super post 簡單 font
Graphics 類可以理解為畫筆。它是java為我們提供的一個繪圖類。使用它可以畫:直線 drawLine(int x1, int y1, int x2, int y2)矩形 drawRect(int x, int y, int width, int height)圓形 drawOval(int x, int y, int width,int height)填充矩形 fillRect(int x,int y, int width, int height)填充圓形 fillOval(int x,int y, int width, int height)圖片 drawImage(Image img, int dx1, int dy1, int dx2, int dy2, int sx1, int sy1, int sx2, int s ImageObserver observer)字串 drawString(AttributedCharacterIterator iterator, int x, int y)設定畫筆顏色setColor(Color c)設定字型setFont(Font font)等 功能繪圖一般是在JPanel上進行 例如我們畫一個圓,一個矩形package draws;import javax.swing.*;import java.awt.*;/*** swing 繪圖技術* Created by admin on 2017/7/19.*/public class Draw1 extends JFrame{MyPanel myPanel;public static void main(String[] args){Draw1 draw1 = new Draw1();}public Draw1(){myPanel = new MyPanel();this.add(myPanel); this.setTitle("記事本");this.setResizable(false);this.setLocation(500, 250);this.setSize(350, 230);this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);this.setVisible(true);}}// 用於繪圖和顯示繪圖的一個地區// 繼承了父類JPanelclass MyPanel extends JPanel{// JPanel 裡面有一個方法(paint)繼承了之後需要重寫// Graphics是一個畫筆 是繪圖類的一個重要類// 這個方法不需要顯式的去調用,運行時候系統會自動調用// 以下情況也會調用paint// 最大化和已最小化的視窗時// 改變表單大小時// repaint()方法被調用時public void paint(Graphics graphics){// 1.調用父類完成初始化任務super.paint(graphics);// 簡單的畫一個圓圈 使用該方法drawOval 參數為 x 座標 y 座標 寬度 高度 單位都是像素// x 座標和 y 座標 為距離我們GUI介面左上方的位置的像素graphics.drawOval(10, 10, 30, 30);graphics.draw3DRect(50, 50, 50, 50, true);}}
java GUI編程(swing)之八swing繪圖