javapaint,javapaint 圖片右上角加圓點

本文目錄一覽:

java中paint()的具體用法是什麼?

這個方法需要注意的地方不多,也就是重寫時,先調用 super.paint(g) 方法

paint方法不需要編寫代碼調用,只需要重寫。

其他看jdk幫助中就行了。

public void paint(Graphics g) {

super.paint(g);// 調用父類的paint方法或調用下面的方法直接繪製組件

g.drawImage(image, 0, 0, null);

g.setFont(new Font(“”, Font.BOLD, 13));

g.setColor(Color.WHITE);

}

paint

public void paint(Graphics g)繪製容器。該方法將 paint 轉發給任意一個此容器子組件的輕量級組件。如果重新實現此方法,那麼應該調用 super.paint(g) 方法,從而可以正確地呈現輕量級組件。如果通過 g 中的當前剪切設置完全剪切某個子組件,則不會將 paint() 轉發給這個子組件。

覆蓋:

類 Component 中的 paint

參數:

g – 指定的 Graphics 窗口

另請參見:

Component.update(Graphics)

java的paint()是哪個類中定義的方法?

首次出現在java.awt.Component類中,原型是:

public void paint(Graphics g)。

JAVA中paint()是自動執行的嗎?

是的paint()方法只會自動調用一次,而且 你用的時候要自己重寫這個方法

調用過一次的 時候 可以在線程里用repaint() 再度調用

關於Graphics ; 樓主的觀點大部分是對的,但是有點小問題

首先 你並沒有 調用paint(g)方法,而是 系統調用的,或者是你自己repaint()

調用的

如果 你要調用paint()方法,你必須傳進來一個 參數 Graphics

Graphics 這個對象的 表示的 是,你的繪製環境

比如 有2個 JFrame jf1,jf2,那麼對應2個Graphics g1,g2

(g1=jf1.getGraphics(),g2=jf2.getGraphics())//獲取 繪製環境

如果jf1 是顯示的,jf2是隱藏的

那麼 你自己調用 paint(g2)的時候 ,不會顯示繪製的內容,因為

paint()實在jf2上繪製的,

「包含有paint()方法的class實例化一個對象後調用構造方法後就會自動產生Graphics」

Graphics 這個對象不是在 你自己寫的 類中產生的

而是 在 JFrame等 一些 可以作為容器類里 已經實例化的

也就是說 他已經定好了 繪製環境,

所以 你寫JFrame,什麼的 需要實現paint()方法的 時候

你不需要指定一個Graphics 說明你的 繪製環境

PS(你也可試試 在 線程里調用 paint(),好像也可以,因為 畢竟也是一個方法

,我曾經 在 paint()方法 里調用過 repaint(),而不是在線程里調用repaint(),就達到了動畫的效果

)

JAVA中Paint與paintComponent方法的區別是什麼

Component.paint:繪製此組件。

應該繪製組件的內容時調用此方法;例如首次顯示組件或者組件已損壞並需要修復時。Graphics 參數中的矩形框設置為需要繪製的區域。重寫此方法的 Component 子類不需要調用 super.paint(g)。

出於性能的考慮,首次顯示寬度或高度為 0 的 Component 時認為它不需要進行繪製,並且也不需要修復。

Container.paint:繪製容器。該方法將 paint 轉發給任意一個此容器子組件的輕量級組件。如果重新實現此方法,那麼應該調用 super.paint(g) 方法,從而可以正確地呈現輕量級組件。如果通過 g 中的當前剪切設置完全剪切某個子組件,則不會將 paint() 轉發給這個子組件。

Container.paintComponents:繪製此容器中的每個組件。

根據JAVA的API文檔說,PAINT是CONTAINER提供的方法,只要容器需要重畫的時候就會調用,而paintComponent則是JComponent所提供的方法,它是paint委託的一種重畫組件的方法。我的想法是paint只會負責重畫容器類的界面例如:Frame Dialog Window之類的,而在這些容器之上的組件則由paint委託paintComponent負責重畫。

java paint方法一執行就黑屏

解釋原因: 為什麼黑屏 ?

答: setVisible(true) 窗口可見. 這個時候已經自動調用了paint函數,setSize()改變了窗口的大小,. 又回自動調用paint函數, paint函數會默認清空之前的繪製. 所以全黑了

解決辦法:

        public void paint(Graphics g) {

super.paint(g); // 添加上這行代碼, 表示再原有基礎上重繪.

g.drawLine(100, 50, 400, 400);

g.drawRect(100, 50, 300, 300);

g.drawOval(100, 50, 300, 300);

}

其他建議:

setSize(500, 500);

setLocation(300, 300);

setVisible(true); // 把可視化,移動到設置大小和位置的後面

在JAVA applet中paint辦法為什麼會自動執行?

Applet類中的四種基本方法用來控制其運行狀態:init()、start()、stop()、destroy()在start()方法里,會調用paint方法。這是applet的運行機制。\x0d\x0a init()方法\x0d\x0a 這個方法主要是為Applet的正常運行做一些初始化工作。當一個Applet被系統調用時,系統首先調用的就是該方法。通常可以在該方法中完成從網頁向Applet傳遞參數,添加用戶界面的基本組件等操作。\x0d\x0a start()方法\x0d\x0a 系統在調用完init()方法之後,將自動調用start()方法。而且,每當用戶離開包含該 Applet的主頁後又再返回時,系統又會再執行一遍start()方法。這就意味著start()方法可以被多次執行,而不像init()方法。因此,可把只希望執行一遍的代碼放在init()方法中。可以在start()方法中開始一個線程,如繼續一個動畫、聲音等。\x0d\x0a stop()方法\x0d\x0a 這個方法在用戶離開Applet所在頁面時執行,因此,它也是可以被多次執行的。它使你可以在用戶並不注意Applet的時候,停止一些耗用系統資源的工作以免影響系統的運行速度,且並不需要人為地去調用該方法。如果Applet中不包含動畫、聲音等程序,通常也不必實現該方法。\x0d\x0a destroy()方法\x0d\x0a 與對象的finalize()方法不同,Java在瀏覽器關閉的時候才調用該方法。 Applet是嵌在HTML文件中的,所以destroty()方法不關心何時Applet被關閉,它在瀏覽器關閉的時候自動執行。在destroy() 方法中一般可以要求收回佔用的非內存獨立資源。(如果在Applet仍在運行時瀏覽器被關閉,系統將先執行stop()方法,再執行destroy()方法。

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/287102.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-23 13:08
下一篇 2024-12-23 13:08

相關推薦

  • 用Python繪製酷炫圖片

    在本篇文章中,我們將展示如何使用Python繪製酷炫的圖片。 一、安裝Python繪圖庫 在使用Python繪製圖片之前,我們需要先安裝Python繪圖庫。Python有很多繪圖庫…

    編程 2025-04-29
  • 使用axios獲取返回圖片

    使用axios獲取返回圖片是Web開發中很常見的需求。本文將介紹如何使用axios獲取返回圖片,並從多個方面進行詳細闡述。 一、安裝axios 使用axios獲取返回圖片前,首先需…

    編程 2025-04-29
  • Python 圖片轉表格

    本文將詳細介紹如何使用Python將圖片轉為表格。大家平時在處理一些資料的時候難免會遇到圖片轉表格的需求。比如從PDF文檔中提取表格等場景。當然,這個功能也可以通過手動複製、粘貼,…

    編程 2025-04-29
  • Python緩存圖片的處理方式

    本文將從多個方面詳細闡述Python緩存圖片的處理方式,包括緩存原理、緩存框架、緩存策略、緩存更新和緩存清除等方面。 一、緩存原理 緩存是一種提高應用程序性能的技術,在網路應用中流…

    編程 2025-04-29
  • Python如何抓取圖片數據

    Python是一門強大的編程語言,能夠輕鬆地進行各種數據抓取與處理。抓取圖片數據是一個非常常見的需求。在這篇文章中,我們將從多個方面介紹Python如何抓取圖片數據。 一、使用ur…

    編程 2025-04-29
  • Avue中如何按照後端返回的鏈接顯示圖片

    Avue是一款基於Vue.js、Element-ui等技術棧的可視化開發框架,能夠輕鬆搭建前端頁面。在開發中,我們使用到的圖片通常都是存儲在後端伺服器上的,那麼如何使用Avue來展…

    編程 2025-04-28
  • Python利用Image加圖片的方法

    在Python中,利用Image庫可以快速處理圖片,並加入需要的圖片,本文將從多個方面詳細闡述這個操作。 一、Image庫的安裝和基礎操作 首先,我們需要在Python中安裝Ima…

    編程 2025-04-28
  • 使用CKSlide實現圖片輪播

    CKSlide是一個基於jQuery的插件,可以方便地為網頁添加幻燈片和圖片輪播效果。使用CKSlide可以讓網站更加生動、活潑,給用戶帶來更好的體驗。 一、CKSlide基本用法…

    編程 2025-04-28
  • Python中使用socket傳輸圖片

    本文將從多個方面介紹如何使用Python中的socket模塊傳輸圖片,涉及到準備工作、發送方部分和接收方部分的詳細代碼實現。 一、準備工作 在使用Python中的socket模塊進…

    編程 2025-04-28
  • Python窗口中導入圖片

    Python作為一種高級語言,在圖形界面的應用和操作方面越來越得心應手。本篇文章將詳細闡述Python窗口中導入圖片的方法和實現。 一、導入圖片的準備工作 在導入圖片前,我們需要先…

    編程 2025-04-28

發表回復

登錄後才能評論