本文目錄一覽:
- 1、JAVA中的JPanel怎麼使用呢?
- 2、在JAVA中常用的數據結構(容器)有哪些?有什麼特點?
- 3、Java 中的容器和框架的區別 有哪些
- 4、什麽是JAVA的容器組件?它有什麽特點?JAVA提供了那些容器組件?
- 5、Java中Web容器
- 6、java的容器控件有哪些?
JAVA中的JPanel怎麼使用呢?
使用方法:
JPanel可以為添加到窗體中的輕型控件提供通用的容器。默認情況下,面板容器不會向控件添加任何除自身背景之外的顏色,但是,可以輕鬆地向其添加邊框(borders)並根據需要改制樣式。
在大多數Java GUI外觀體驗(look and feel)中,面板容器默認是不透明。不透明的面板容器跟普通的目錄窗格功能差別不大,並且可以有效幫助樣式改進。
設置圖層管理器
和其他容器(container)一樣,面板容器panel也使用布局管理器(Layout Manager)對添加到容器中的組件(compnent)進行定位和設置尺寸大小。
默認情況下,面板容器的布局管理器是FlowLayout(流式布局)類的一個實例,這個類對放置在容器中的空間按行進行布局(從左到右諸行排列)。在創建面板容器時,你可以輕鬆地使用任何其他
布局管理器通過調用setLayout方法或指定一個布局管理器。
如下是一個在創建面板容器時設置圖層管理器的例子:
JPanel p=new JPanel(new BorderLayout());
但這種方法不能用在BoxLayout(盒子布局)中,因為BoxLayout構造器需要一個預留(pre-existing)容器。如下所示:
JPanel p=new JPanel();
p.setLayout(new BoxLayout(p,BoxLayout.PAGE_AXIS));
添加控件
向面板容器中添加組件時使用add()方法,而向add()方法中傳遞的參數決定於該面板容器使用哪個布局管理器。當所用的布局管理器是FlowLayout,BoxLayout,GridLayout,或SpringLayout時,像通常那樣向add()方法傳遞單一的參數即可,如下所示:
aFlowPanel.add(aComponent);
aFlowPanel.add(anotherComponent);
而當布局管理器為BorderLayout時,還需要提供另一個參數來指定添加到容器中控件的位置,例如:
aBorderPanel.add(aComponent,BorderLayout.CENTER);
aBorderPanel.add(anotherComponent,BorderLayout.PAGE_END);
對於GridBagLayout布局管理器,可以使用上述任一方法,但必須以某種方式對每個組件指定GridBagConstraints,例如:
JPanel pane=new JPanel(new GridBagLayout());
GridBagConstraints c=new GridBagConstraints();
警告
Swing不是線程安全的。
此類的序列化對象與以後的Swing版本不兼容。當前序列化支持適用於短期存儲,或適用於在運行相同Swing版本的應用程序之間進行RMI(Remote Method Invocation,遠程方法調用)。
擴展資料:
JPanel一個面板也是一個容器JPanel Pan=new JPanel();
Pan.setLayout(null);//設置為空布局也就是自由布局
Pan.add(控件);//添加控件
JPanel是java圖形化界面中最常使用的容器。實例:在窗體中添加一個藍色的面板
//PanelDemo.java
import javax.swing.*;
import java.awt.*;//引入AWT包,因為要使用到顏色類
class PanelDemo{
public static void main(String[]args)throws Exception
{JFrame f=new JFrame(“第一個Java窗口”);
f.setSize(300,200);
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.setVisible(true);
f.setResizable(false);
f.setLocationRelativeTo(null);
f.setLayout(null);//設置窗體布局為空布局
JPanel p=new JPanel();//實例化一個面板
//設置面板背景色為藍色,如果不引入AWT包,程序將出錯,可以試試看
p.setBackground(Color.BLUE);
p.setSize(100,100);//設置面板對象大小
f.getContentPane().add(p);//將面板添加到窗體中
//如果使用下面添加面板的方法,面板將布滿整個窗口,可以試試看
//f.setContentPane(p);
}
}
參考資料:
百度百科——JPanel
在JAVA中常用的數據結構(容器)有哪些?有什麼特點?
JAVA的容器—List,Map,Set
Collection
├List
│├LinkedList
│├ArrayList
│└Vector
│ └Stack
└Set
Map
├Hashtable
├HashMap
└WeakHashMap
Java 中的容器和框架的區別 有哪些
容器是程序運行的整體環境,框架是建立在容器之上的,框架也可以理解為程序,只是為了開發維護方便而寫的比較通用的程序。
框架是一個規範,還沒有具體實現.等你來搞定,但要按規定的範圍內實現你自己需要的東西.容器是已經做好了,能盛東西了.但盛的東西都是按規範做出來的.規範是口頭上的,容器已經是實現了的.JBUILDERX就超出了JAVA規範.
什麽是JAVA的容器組件?它有什麽特點?JAVA提供了那些容器組件?
JAVA容器庫(container)包含兩大組件:Collection和Map.
Collection是一組相互獨立的對象的集合.Map是一組KEY–VALUE對應的對象集合.
Collection中又分為兩類:一類是List;另一類是Set.Set下還有SortedSet,而Map下有SortedMap.
其下有很多接口和方法,具體的用法請參考官方文檔和有關教程,這個不難。
這些接口和方法是構成整個JAVA容器庫的最頂層的元素,學習了這些我至少可以使用容器編寫一般化的 的程序.這些方法的學習總體來說是比較簡單的,但如果要深究其原理也是頗具挑戰的,就單單說迭代器的實現,實現機理,也是值得探討的。拋開這些不說,在類庫的設計層面上所也值得我們去研究。
以上為引用。
Java中Web容器
Server只是一種技術。它本身不能單獨運行。需要依賴Servlet容器。說通俗點,你要開發Servlet。需要導入Servlet的jar包,然後寫代碼。但是你寫完代碼之後不能運行。為什麼因為Servlet沒有main函數,不能運行。那怎麼運行Servlet的代碼?依賴Servlet容器啊。Servlet容器裏面就有main函數的入口。所以你要把Servlet代碼放入到Servlet容器中才能運行。那Servlet容器有哪些?如何放進容器中?
常見的Servlet容器有:tomcat , jetty。
以tomcat為例。我們如何將Servlet代碼放入到tomcat中?很簡單。如果你用window系統,你下載一個window版的tomcat的zip壓縮包。解壓後,找到webapps目錄。新建一個目錄。把你的Servlet代碼的class文件代碼。web.xml,lib包等原封不動拷貝到這個目錄中。然後在tomcat解壓目錄的bin目錄下,找到startup.bat。雙擊就能啟動tomcat。tomcat有main函數。所以tomcat已啟動,web容器就啟動。當你第一次請求某個Servlet時,Servlet就會被創建,並保存在容器中。
java的容器控件有哪些?
1.頂層容器
什麼是頂層容器?當我們使用Java進行圖形編程的時候,圖在哪裡繪製呢?我們需要一個能夠提供圖形繪製的容器,這個容器就被稱為頂層容器,你
也可以把它想像成一個窗口。頂層容器是進行圖形編程的基礎,一切圖形化的東西,都必然包括在頂層容器中。在Swing中,我們有三種可以使用的頂層容器,
它們分別是:
JFrame:用來設計類似於Windows系統中的窗口形式的應用程序。
JDialog:和JFrame類似,只不過JDialog是用來設計對話框。
JApplet:用來設計可以在嵌入在網頁中的Java小程序。
如果需要使用Swing製作一個窗口類程序,我們的代碼看起來應該是這樣:
import javax.swing.*;
public class KyodaiUI
extends JFrame {
……
}
2.控件
控件是構成應用程序界面的基本元素,按鈕、文本框、進度條等,這些都是控件。控件(這裡我們只討論可視化控件)又可以分為容器控件和非容器控件。從字面
意義上來理解,容器控件就是能包含其他控件的特殊控件,例如,Java中的JPanel控件就屬於容器型控件,我們可以在JPanel中放置按鈕、文本框
等非容器控件,你甚至可以在JPanel中再放置若干個JPanel控件(值得注意的是,頂層容器也是容器型控件,每一個窗口應用程序中有且只能有一個頂
層容器控件,換句話說,頂層容器不能包括在其他的控件中)。
Java中的容器控件有很多,除剛才提到的JPanel外,還有
JTabbedPane、JScrollPane等,非容器控件有JButton、JLabel、JTextField等。如果你需要向某個容器型的控件
中添加控件,你可以使用 add(Component comp) 方法來實現,如:
JPanel panel = new JPanel();
JButton button = new JButton();
panel.add(button);
3.邊框
雖然我們使用了不同前景色來區別不同的區域,然而卻沒有層次感,加上邊框一定會漂亮許多。
在Java中,所有以J打頭的Swing控件都可以使用setBorder方法來為自己設置邊框。邊框有很多種,線型、凸起、凹下、空的,你甚至可以自
由組合形成個人風格。所有的Border都必須使用javax.swing.BorderFactory中提供的靜態方法來創建,比如:
Border border = BorderFactory.createBevelBorder(BevelBorder.LOWERED,
new Color(45, 92, 162),
new Color(43, 66, 97),
new Color(45, 92, 162),
new Color(84, 123, 200));
現在,我們將toolBar.setBackground(Color.white)改為toolBar.setBorder(border),立體效果是不是已經出現了?
原創文章,作者:YSVN,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/144497.html