Java畫筆的簡(jiǎn)單實(shí)用方法
Java中提供了畫筆,可以使用畫筆做出界面上的任何東西,接下來(lái)先熟悉一下畫筆的使用過程,以畫一條線為例。
源碼:
import java.awt.Graphics; import java.awt.event.MouseEvent; import java.awt.event.MouseListener; import javax.swing.JFrame; import javax.swing.JPanel; /** * 畫筆的初始用 * * @author M_WBCG * */ public class paintBrush extends JFrame implements MouseListener { // 畫筆初始化 Graphics g; // 坐標(biāo)的起點(diǎn)和終點(diǎn)的初始化 int x1, y1, x2, y2; public paintBrush() { // TODO Auto-generated constructor stub // 創(chuàng)建獲得畫筆的面板 JPanel drawPanel = new JPanel(); // 給窗體添加面板 add(drawPanel); setTitle("畫筆"); setSize(500, 500); setVisible(true); // 畫筆獲取要在可見之后,設(shè)置成全局屬性 g = drawPanel.getGraphics(); drawPanel.addMouseListener(this); } public static void main(String[] args) { new paintBrush(); } @Override public void mouseClicked(MouseEvent e) { // TODO Auto-generated method stub } @Override public void mousePressed(MouseEvent e) { // TODO Auto-generated method stub x1 = e.getX(); y1 = e.getY(); } @Override public void mouseReleased(MouseEvent e) { // TODO Auto-generated method stub x2 = e.getX(); y2 = e.getY(); g.drawLine(x1, y1, x2, y2); x1 = x2 = y1 = y2 = 0; } @Override public void mouseEntered(MouseEvent e) { // TODO Auto-generated method stub } @Override public void mouseExited(MouseEvent e) { // TODO Auto-generated method stub } }
在此就可以引申出很多的問題,怎樣在一邊畫線的時(shí)候就可以看到線的形成?怎樣去畫一條直線?在畫完一條直線后最小化該程序后重新打開線段消失?怎樣在畫完直線后關(guān)閉掉程序第二次打開還存在?
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家有所幫助!
相關(guān)文章
Eclipse使用maven搭建spring mvc圖文教程
這篇文章主要為大家分享了Eclipse使用maven搭建spring mvc圖文教程,感興趣的小伙伴們可以參考一下2016-05-05Java連接mysql數(shù)據(jù)庫(kù)以及mysql驅(qū)動(dòng)jar包下載和使用方法
這篇文章主要給大家介紹了關(guān)于Java連接mysql數(shù)據(jù)庫(kù)以及mysql驅(qū)動(dòng)jar包下載和使用方法,MySQL是一款常用的關(guān)系型數(shù)據(jù)庫(kù),它的JDBC驅(qū)動(dòng)程序使得我們可以通過Java程序連接MySQL數(shù)據(jù)庫(kù)進(jìn)行數(shù)據(jù)操作,需要的朋友可以參考下2023-11-11application作用域?qū)崿F(xiàn)用戶登錄擠掉之前登錄用戶代碼
這篇文章主要介紹了application作用域?qū)崿F(xiàn)用戶登錄擠掉之前登錄用戶代碼,具有一定參考價(jià)值,需要的朋友可以了解下。2017-11-11springboot實(shí)現(xiàn)異步調(diào)用@Async的示例
這篇文章主要介紹了springboot實(shí)現(xiàn)異步調(diào)用@Async的示例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-12-12JAVA異常信息Exception?e及e的相關(guān)方法解讀
這篇文章主要介紹了JAVA異常信息Exception?e及e的相關(guān)方法解讀,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-06-06Java?Jar包項(xiàng)目?jī)?nèi)存設(shè)置方法舉例
這篇文章主要給大家介紹了關(guān)于Java?Jar包項(xiàng)目?jī)?nèi)存設(shè)置方法的相關(guān)資料,文中通過代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2024-01-01