正文

Java圖形與文本(22)

Java開(kāi)發(fā)實(shí)戰(zhàn)1200例(第II卷) 作者:李鐘尉


1.3 繪 制 圖 案

實(shí)例022  繪制五環(huán)圖案

實(shí)例說(shuō)明

本實(shí)例演示奧林匹克運(yùn)動(dòng)會(huì)的會(huì)徽,即五環(huán)圖案的繪制。運(yùn)行程序,將在窗體上繪制五環(huán)圖案,效果如圖1.22所示。

關(guān)鍵技術(shù)

本實(shí)例主要是通過(guò)在JPanel類(lèi)的子類(lèi)中,重寫(xiě)JComponent類(lèi)的paint()方法,并在該方法中使用Graphics2D類(lèi)的setStroke()、setColor()和drawOval()方法來(lái)實(shí)現(xiàn)的。

(1)使用Graphics2D類(lèi)的setStroke()方法,指定筆畫(huà)的粗細(xì)。

(2)使用Graphics2D類(lèi)的setColor()方法,指定顏色。

(3)使用Graphics2D類(lèi)的drawOval()方法,在指定位置繪制圓環(huán),該方法是從Graphics類(lèi)中繼承的。

設(shè)計(jì)過(guò)程

(1)新建一個(gè)項(xiàng)目。

(2)在項(xiàng)目中創(chuàng)建一個(gè)繼承JFrame類(lèi)的FiveDaisyChainFrame窗體類(lèi)。

(3)在FiveDaisyChainFrame窗體類(lèi)中,創(chuàng)建內(nèi)部面板類(lèi)FiveDaisyChainPanel,并重寫(xiě)JComponent類(lèi)的paint()方法,在該方法中實(shí)現(xiàn)五環(huán)圖案的繪制。

(4)將內(nèi)部面板類(lèi)FiveDaisyChainPanel的實(shí)例,添加到窗體類(lèi)FiveDaisyChainFrame的內(nèi)容面板上,用于在窗體上顯示五環(huán)圖案,代碼如下:

class FiveDaisyChainPanel extends JPanel {  // 創(chuàng)建內(nèi)部面板類(lèi)

    public void paint(Graphics g) {      // 重寫(xiě)paint()方法

        Graphics2D g2 = (Graphics2D)g;  // 獲得Graphics2D對(duì)象

        BasicStroke stroke = new BasicStroke(3);  // 創(chuàng)建寬度是3的筆畫(huà)對(duì)象

        g2.setStroke(stroke); // 設(shè)置筆畫(huà)對(duì)象

        Color color = new Color(0,162,232); // 創(chuàng)建顏色對(duì)象

        g2.setColor(color); // 設(shè)置顏色

        g2.drawOval(30, 40, 60, 60);      // 繪制第一個(gè)圓

        //省略了繪制其他圓的代碼

    }

}

秘笈心法

心法領(lǐng)悟022:獲取五環(huán)圖案的顏色。

在五環(huán)圖案中,每種顏色都有特定的含義,為了獲得五環(huán)圖案的顏色,可以在Photoshop中按F8快捷鍵,在打開(kāi)的信息面板中獲得顏色的RGB值,然后使用Color類(lèi)的構(gòu)造方法創(chuàng)建顏色對(duì)象。


上一章目錄下一章

Copyright ? 讀書(shū)網(wǎng) www.dappsexplained.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號(hào) 鄂公網(wǎng)安備 42010302001612號(hào)