1。public void repaint()2。public void repaint(long tm)//指定調用update方法之前等待的最大毫秒數(shù)tm 3。public void repaint(int x,int y,int width,int height)//重繪組件的指定矩形區(qū)域 4。
創(chuàng)新互聯(lián)于2013年開始,是專業(yè)互聯(lián)網(wǎng)技術服務公司,擁有項目成都網(wǎng)站設計、成都網(wǎng)站建設、外貿網(wǎng)站建設網(wǎng)站策劃,項目實施與項目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元洪湖做網(wǎng)站,已為上家服務,為洪湖各地企業(yè)和個人服務,聯(lián)系電話:028-86922220
返回此 JFrame 的字符串表示形式。 protected void processWindowEvent(WindowEvent e) 處理此組件上發(fā)生的窗口事件。 void remove(Component comp) 從該容器中移除指定組件。
比如awt正在繪制的過程中,你的程序亂入,在他繪制一半的圖片上涂涂抹抹……。當然java的設計者希望我們把繪制全權交給awt線程來畫,而不是自己來畫!因為這樣最安全和省事。
根據(jù)JAVA的API文檔說,PAINT是CONTAINER提供的方法,只要容器需要重畫的時候就會調用,而paintComponent則是JComponent所提供的方法,它是paint委托的一種重畫組件的方法。
每鼠標點擊一次,就往drawings里面添加一個Paintable對象。而在主類JPanel的paint中循環(huán)依次對drawings中的所有對象進行一次性繪制。和背景一起繪制也就不多占資源。
repaint方法調用時會向你的程序發(fā)送一個消息,要求重繪你的程序的窗口的無效區(qū)域。但這個消息會首先保存到應用程序的消息隊列,并不會馬上得到處理。
在paintComponent()里面先調用super.paintComponent(g);再跟你的代碼。
如果不在paint里面畫圖,那么當panel界面更新時,它是不會再畫出來。相當一次性畫完就沒了。
你是想干什么 設置背景圖片?如果只是要設置背景圖片可以先放在Jpanel里 然后再加到 Jframe 里。
可以通過監(jiān)聽事件來達到效果。1,首先先新建個監(jiān)聽事件,監(jiān)聽某個控件,比如按鈕,監(jiān)聽按鈕,當點擊按鈕時執(zhí)行一系列操作。
將圖片資源文件加載放在構造函數(shù)里,只加載一次即可,避免重復加載。不要放在paintComponent函數(shù)里,因為每次窗口改動都會調用此函數(shù),會造成資源重復加載問題。
當然,直接重繪或全部重繪是很虧的,一個是用雙緩存技術,另一個是只對桌面上顯示的部分重繪。雙緩存是指在緩存內先模擬重繪過程,只把最后成形的結果傳給顯示器顯示。paint表示實參個數(shù)可變。
拖動事件需要記錄當前矩形的位置,兩個坐標值相減,得到矩形的高度和寬度即可最終確定一個矩形,畫出來。問題就來了,那就是有兩個矩形了,這時在鼠標抬起的事件中刪除一個拖動痕跡的矩形。
我的理解如下,老師講的有欠缺,沒有講清楚這個方法的使用范圍 java里repaint()是重繪component的方法;component中己有的圖形發(fā)生變化后不會立刻顯示,須使用repaint方法。
分享標題:Java重繪窗口代碼 java繪制窗口
文章源于:http://vcdvsql.cn/article28/dcshgjp.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供軟件開發(fā)、品牌網(wǎng)站建設、外貿建站、用戶體驗、關鍵詞優(yōu)化、小程序開發(fā)
聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)