Java繪圖技術(shù)基礎(chǔ)(實(shí)例講解)
如下所示:
public class Demo1 extends JFrame{ MyPanel mp=null; public static void main(String[] args){ Demo1 demo=new Demo1(); } public Demo1(){ mp=new MyPanel(); this.add(mp); this.setSize(400,300); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); this.setVisible(true); } } //定義一個(gè)MyPanel(我自己的面板,是用于繪圖和顯示繪圖的區(qū)域) class MyPanel extends JPanel{ //覆蓋JPanel的paint方法 public void paint(Graphics g){ //Graphics是繪圖的重要類,可以理解成一只畫筆 //1、調(diào)用父類函數(shù)完成初始化(不可少) super.paint(g); // System.out.println("paint被調(diào)用"); g.drawOval(10, 10, 30, 30); //先畫出一個(gè)圓 g.drawLine(10, 10,40, 40); // 畫直線 g.drawRect(10, 10, 40, 60); //畫矩形邊框 g.setColor(Color.BLUE); //設(shè)置顏色 g.fillRect(70, 70, 40, 60); //填充矩形 g.setColor(Color.gray); g.fillRect(150, 150, 30,40); //在面板上畫出圖片 Image im=Toolkit.getDefaultToolkit().getImage(Panel.class.getResource("/imag_1")); g.drawImage(im, 200, 200, 200, 150, this); //顯示 //畫出字體 g.setColor(Color.GREEN); g.setFont(new Font("隸書",Font.BOLD,30)); g.drawString("祖國(guó)萬(wàn)歲!", 100, 80); } }
1、Component類提供了兩個(gè)和繪圖相關(guān)最重要的方法
1)paint(Graphics g)繪制組件外觀
2)repaint()刷新組件的外觀
當(dāng)組件第一次在屏幕顯示時(shí),程序會(huì)自動(dòng)的調(diào)用paint()方法來(lái)繪制組件。
2、關(guān)于Graphics類
運(yùn)行效果如下:
以上這篇Java繪圖技術(shù)基礎(chǔ)(實(shí)例講解)就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
mybatis插件pageHelper實(shí)現(xiàn)分頁(yè)效果
這篇文章主要為大家詳細(xì)介紹了mybatis插件pageHelper實(shí)現(xiàn)分頁(yè)效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-12-12java中的Io(input與output)操作總結(jié)(四)
前面已經(jīng)把java io的主要操作講完了,這一節(jié)我們來(lái)說(shuō)說(shuō)關(guān)于java io的其他內(nèi)容:Serializable序列化/DataOutputStream和DataInputStream類/管道流等等,感興趣的朋友可以了解下2013-01-01springboot集成mqtt超級(jí)詳細(xì)步驟
這篇文章主要介紹了springboot集成mqtt超級(jí)詳細(xì)步驟,本文分步驟結(jié)合實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-06-06maven中配置項(xiàng)目的jdk版本無(wú)效的排查方式
這篇文章主要介紹了maven中配置項(xiàng)目的jdk版本無(wú)效的排查方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-04-04自己動(dòng)手寫一個(gè)java版簡(jiǎn)單云相冊(cè)
這篇文章主要為大家分享了自己動(dòng)手寫的一個(gè)java版簡(jiǎn)單云相冊(cè),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-07-07SpringBoot實(shí)現(xiàn)RabbitMQ監(jiān)聽消息的四種方式
本文主要介紹了SpringBoot實(shí)現(xiàn)RabbitMQ監(jiān)聽消息的四種方式,包括@RabbitListener,MessageListener接口,MessageListenerAdapter適配器,@RabbitHandler這幾種,感興趣的可以了解一下2024-05-05詳解如何使用MongoDB+Springboot實(shí)現(xiàn)分布式ID的方法
這篇文章主要介紹了詳解如何使用MongoDB+Springboot實(shí)現(xiàn)分布式ID的方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-09-09Springcould多模塊搭建Eureka服務(wù)器端口過(guò)程詳解
這篇文章主要介紹了Springcould多模塊搭建Eureka服務(wù)器端口過(guò)程詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-11-11