1. 程式人生 > >Java JPanel面板更新、重畫

Java JPanel面板更新、重畫

問題:

      面板操作在Java程式設計中很常見,有的時候更是需要對面板進行相應的操作,比如點選按鈕對面板進行更新或者重畫

解決思想:

      1、移除JPanel/Panel面板的所有元件,重新構建一個JPanel/Panel面板,在新面板上重新構建所需要的元件

             缺點:重新構建一個JPanel/Panel面板後,將新面板載入到之前的面板上,造成了系統資源的浪費,另外導致後續操作的不便,還

                有一點值得注意,如果之前的JPanel/Panel面板其中的元件使用自動拉寬或者拉高的操作的話,載入的新面板會縮小到預設,就

               是說,新面板之外有很大的一塊空白,這是由於新面板使用的系統預設大小(新面板中的元件總佔用大小),而載入進去之後不會

                自動拉寬或者拉高新面板,及時新面板中的元件設定的自動拉寬/拉高,一下附圖對比

初始面板

初始面板例項圖

重新載入的面板

重新載入的面部例項圖

         2、移除所有元件(或者移除特定元件),抽象一個方法,把JPanel/Panel面板和需要新增或重構的元件傳遞過去

               優點:至始至終都只有一個面板,不管你點選多少次,方便操作之餘,也不會出現重新構建夠面板突然縮水的情況

解決方式:

         1、重新構建另外一個JPanel/Panel面板

        

         2、在JPanel/Panel面板上重新載入元件

        

相關推薦

Java JPanel面板更新

問題:       面板操作在Java程式設計中很常見,有的時候更是需要對面板進行相應的操作,比如點選按鈕對面板進行更新或者重畫 解決思想:       1、移除JPanel/Panel面板的所有元件,重新構建一個JPanel/Panel面板,在新面板上重新構建所需要的元件

Java 繼承與重寫

重載 進行 cnblogs 向上造型 用法 編譯 根據 ide 調用 1.類的繼承 1)繼承   父類:所有子類所共有的屬性和行為   子類:子類所特有的屬性和行為 通過extends關鍵字來實現類的繼承 子類(Sub class)可以繼承父類(Super class)的

java知識點回顧——繼承重寫多態

extends 方法 per class 相同 重載 實現 修飾 等級 1、繼承是java面向對象編程技術的一塊基石,因為它允許創建分等級層次的類。修飾符 class 子類名 extends 父類名super.方法名(參數列表); 2、重寫是子類對父類的允許訪問的方法的實現

C++ 過載重寫(覆蓋)定義(隱藏) 與 Java 過載重寫(覆蓋)隱藏的區別

C++: 一、過載(overload) 指函式名相同,但是它的引數表列個數或順序,型別不同。但是不能靠返回型別來判斷。 (1)相同的範圍(在同一個作用域中) ; (2)函式名字相同; (3)引數不同; (4)virtual 關鍵字可有可無。 (5)返回值可以不同; 二、重寫(也稱為覆蓋

Centos下解除安裝更新mysql

1、解除安裝mysql (1)、檢視已裝的mysql版本 [[email protected] ~]# yum list installed | grep mysql mysql.x86_64 5.1.73-8.el6_8 @base

JAVA對於單視窗和多個JPanel面板的切換

寫一個簡單的2048遊戲時,本來思路是想對於每個遊戲介面進行一次new JFrame,並在新視窗中新增元件,將舊視窗用setVisible(false)進行隱藏。但是這樣寫出現了一個問題,就是開啟其他視窗介面會導致之前的部分介面出現無法關閉或者隱藏的情況,因為本

timer定時器每天某個時間更新java訪問外部介面方法

        private void updateFxsmc()  {                 String bb="";  //儲存返回資訊                 String uri = ""; //請求地址                 Properties prop = new

Java圖形介面——選項卡窗格面板元件網格佈局

package com.test.swing; import java.awt.*; import javax.swing.*; public class QLogin extends JFrame{ //定義元件 //北部區域 JLabel jl1; //

永存曲折已死生——傳奇的java

如果說用“永存、曲折、已死、重生”來形容 Java,筆者以為一點也不為過。 1991 年,James Gosling 帶領著名為“Green Team”的團隊著手研發一種新的語言以及專為下一代數字裝置和計算機使用的網路系統。歷時 4 年辛勤工作後,該專案最終修

java實現關機開啟運用程式及網站

這裡主要通過面對物件和麵對過程兩種方法來實現電腦關機、重啟、工作管理員、開啟運用軟體,如QQ音樂,以及開啟網站,比如自己的部落格。 先給出命令:         shutdown -s -t 1       指定1秒後關機         shutdown -r      

1-2 (JVM)Java記憶體模型---記憶體可見性排序順序一致性volatilefinal

一、原子性原子性操作指相應的操作是單一不可分割的操作。例如,對int變數count執行count++d操作就不是原子性操作。因為count++實際上可以分解為3個操作:(1)讀取變數count的當前值;(2)拿count的當前值和1做加法運算;(3)將加完後的值賦給count

java 繼承重寫與多態

如果 訪問修飾符 span exce eat 類型 使用方法 進行 擴展 首先是java 繼承、重載和重寫的概念   繼承:     繼承的作用在於代碼的復用。由於繼承意味著父類的所有方法亦可在子類中使用,所以發給父類的消息亦可發給衍生類。如果Person類中有一個ea

淺談Java中的鎖:Synchronized入鎖讀寫鎖

tps 訪問限制 三種 ron 單線程 new t try end 必須 Java開發必須要掌握的知識點就包括如何使用鎖在多線程的環境下控制對資源的訪問限制 ◆Synchronized◆ 首先我們來看一段簡單的代碼: public class NotSyncDemo {

數據更新視圖的創建與改動

none 記錄 text 分析器 計算機 ext 使用 margin border 一、實驗目的 1、學會使用INSERT、UPDATE、DELETE等SQL語句進行數據更新; 2、學會使用CREATE、DROP等SQL語句創建和刪除視圖。 二、實驗內容 1、在

Mysql實現級聯操作(級聯更新級聯刪除)

刪除表 null weight .cn eat 失敗 bsp src 成績 一、首先創建兩張表stu,sc create table stu( sid int UNSIGNED primary key auto_increment, name varchar(20) no

鎖 Lock入鎖寫入鎖

lee 但是 sleep rac ued finally println ava one ReentrantLock 重入鎖 類似於synchronize 區別與寫法上,在需要進行同步的代碼部分加上鎖定,但不要忘記最後一定要釋放鎖定, 不然會造成鎖永遠無法釋放,其他線程

Java中的synchronizedvolatileReenTrantLockAtomicXXX

包含 指令 純粹 功能性 title 伸縮 其它 同步問題 留下 多線程和並發性並不是什麽新內容,但是 Java 語言設計中的創新之一就是,它是第一個直接把跨平臺線程模型和正規的內存模型集成到語言中的主流語言。核心類庫包含一個 Thread 類,可以用它來構建、啟動和操縱線

8.繼承覆蓋載與多態

auto 區別 再次 cor c++ java接口 睡覺 它的 其中 1. 繼承 1.1 繼承的概念 1.1.1 概念 繼承是java面向對象編程技術的一塊基石,因為它允許創建分等級層次的類。 繼承就是子類繼承父類的特征和行為,使得子類對象(實例)具有父類的實例域和方法,或

Git查看刪除命名遠程分支和tag

arr 錯誤 archive 1.7 rac 人在 post upd local 本文鏈接:http://zengrong.net/post/1746.htm 這篇文章記錄我在使用git的過程中碰到遠程分支和tag的相關內容,提綱: 查看遠程分支 刪除遠程分支和tag

centos7更新更新每天更新每天自動更新

ron 配置 .com crond load idt etc 狀態 con 每一天都有成千上萬的黑客在世界各地尋找 Linux 系統和常見軟件的安全漏洞,一有發現便會發動規模龐大而迅速的網絡攻擊,務求在我們來得及反應前把系統攻陷。不要以為黑客都只是十來歲的年輕小毛頭,大部分