JFrame介面層次結構

2021-09-01 21:18:37 字數 1352 閱讀 5475

學到swing介面的時候,難免會遇到設定背景的情況,那麼如何新增就略是複雜了。原本以為是直接在jframe介面直接新增個就好,可是卻會發現這根本行不通。之後才知道jframe新增有幾個步驟,一般是在layeredpane最底層新增乙個帶的標籤,然後將

contentpane設定為透明,並將上面的部件也設定為透明,那麼乙個背景就設定好了。以下就是一小段背景的設定**:

例項化乙個背景

例項化乙個帶背景的標籤

jlabel lbjt=new jlabel(bjt);

//設定標籤位置大小(大小與一致)

lbjt.setbounds(0, 0, bjt.geticonwidth(), bjt.geticonheight());

//在layeredpane最底層上新增乙個帶的標籤

frame.getlayeredpane().add(lbjt,new integer(integer.min_value));

// jpanel contentpanel = (jpanel) frame.getcontentpane();

// contentpanel.setopaque(false);

((jpanel)frame.getcontentpane()).setopaque(false);//此句與上兩句意義相同

那麼

layeredpane、

contentpane又是什麼東西呢?實際上,在jframe上已經有4個層次了,分別是

rootpane、

layeredpane、

contentpane、

glasspane,而其中

glasspane 預設是透明。以下就是就是其視覺層次圖:

在其中的

contentpane,實際上也就是我們在jframe上新增元件的地方。而在 jdk1.4時,在jframe上新增部件是一定要用

getcontentpane().add(……)  來新增部件。

再看另一張圖:

從這裡可以看出contentpane實際上是新增在layeredpane上的乙個控制項,而layeredpane與classpane是直接新增在rootpane上的,而rootpane是直接新增在jframe上的。

由此也就能清楚的理解jframe的結構層次了。

介面層輸出

每個cpu有乙個單獨的softnet data例項,用來儲存與網路中斷處理相關的報文輸出和輸出佇列。在輸出過程中會用到softnet data中的output queue和completion queue佇列。incoming packets are placed on per cpu queues...

網路介面層

網路介面層對應osi的資料鏈路層,物理層。資料鏈路層分為 mac子層 介質訪問控制層。完成幀的封裝與拆封,物理介質傳輸差錯的檢測 定址,實現介質訪問控制協議。llc子層 邏輯鏈路層。連線管理 建立和釋放連線 是與高層的介面,保證幀的可靠性,按序傳輸激流量控制。邏輯上的資料傳輸控制,作為一種資料傳輸思...

網路介面層

本文參考 計算機網路 第七版 謝希仁編著,博文僅供學習使用,用來記錄筆記 網路介面層包括資料鏈路層和物理層。物理層考慮的是怎樣才能在連線各種計算機的傳輸 上傳輸資料位元流,而不是指具體的傳輸 物理層的作用正是要盡可能地遮蔽掉這些傳輸 和通訊手段的差異,使物理層上面的資料鏈路層感覺不到這些差異。物理層...