swing分割窗口控件JSplitPane使用方法詳解
本文為大家分享了JSplitPane的使用方法,供大家參考,具體內容如下
1、swing分割窗口控件JSplitPane,用來將窗口分割成兩個部分?!?
2、分割后的窗口每個窗口只能放一個控件,想要方多個控件的話,可以在上面方一個JPane面板,這樣就可以方多個控件。swing分割窗口控件JSplitPane,用來將窗口分割成兩個部分。JSplitPane提供兩個常數(shù)讓你設置到底是要垂直分割還是水平分割。這兩個常數(shù)分別是:HORIZONTAL_SPIT,VERTICAL_SPLIT
3、使用方法:
①、setDividerSize(int size)設置分割條的大小。
②、getDividerSize()得到分割條的大小。
③、setDividerLocation(int size)按照百分比設置分割條的位置。
④、getOrientation獲得方向。
4、構造方法
JSplitPane():建立一個新的JSplitPane,里面含有兩個默認按鈕,并以水平方向排列,且沒有Continuous Layout功能。
JSplitPane(int newOrientation):建立一個指定水平或垂直方向切割JSplitPane,但沒有Continuous Layout功能。
JSplitPnae(int newOrientation,boolean newContinuousLayout):建立一個指定水平或垂直方向切割的JSplitPane,且指定是否具有Continuous Layout功能。
JSplitPane(int newOrientation,boolean newContinuousLayout,Component
newLeftComponent,Component newRightComponent):建立一個指定水平或垂直方向切割的JSplitPane,且指定顯示區(qū)所要顯示的組件,并設置是否Continuous Layout功能。
JSplitPane(int newOrientation,COmponent newLeftComponent,COmponent newRightComponent):
建立一個指定水平或垂直方向切割的JSplitPane,且指定顯示區(qū)所要顯示的組件,但沒有Continuous Layout功能 。
上面所說的Continuous Layout意思是指當你拖曳切割面版的分隔線時,窗口內的組件是否會隨著分隔線的拖曳而動態(tài)改變大小。newContinuousLayout是一個boolean值,若設為true,則組件大小會隨著分隔線的拖曳而一起改動;若設為false,則組件大小在分隔線停止改動時才確定。你也可以使用JSplitPane中的setContinuousLayout()方法來設置此項目。
5、實例
package swing;
import java.awt.event.ComponentAdapter;
import java.awt.event.ComponentEvent;
import javax.swing.JFrame;
import javax.swing.JSplitPane;
import javax.swing.JPanel;
public class MainFrame extends JFrame {
/**
*
*/
JSplitPane jSplitPane1 = new JSplitPane();
JPanel jPanel1 = new JPanel();
JPanel jPanel2 = new JPanel();
private static final long serialVersionUID = 1L;
public static void main(String[] args){
new MainFrame();
}
public void myinit(){
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//設定窗體關閉后自動退出進程
this.setSize(800,600);//設定窗體的默認尺寸
this.setExtendedState(JFrame.MAXIMIZED_BOTH);//設定窗體狀態(tài)為屏幕最大化,即全屏尺寸。
this.setVisible(true);//顯示窗體
this.jSplitPane1.setDividerLocation(0.7);//設定分割面板的左右比例(這時候就生效了,如果放在setVisible(true)這據(jù)之前就不會有效果。)
this.addComponentListener(new ComponentAdapter() {
public void componentResized(ComponentEvent e) {
jSplitPane1.setDividerLocation(0.7);
}
});
}
public MainFrame() {
try {
jbInit();
myinit();
} catch (Exception ex) {
ex.printStackTrace();
}
}
private void jbInit() throws Exception {
this.getContentPane().add(jSplitPane1, java.awt.BorderLayout.CENTER);
jSplitPane1.add(jPanel1, JSplitPane.LEFT);
jSplitPane1.add(jPanel2, JSplitPane.RIGHT);
jSplitPane1.setEnabled(false);
jSplitPane1.setOneTouchExpandable(true);
}
}
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
Java實現(xiàn)將文件或者文件夾壓縮成zip的詳細代碼
這篇文章主要介紹了Java實現(xiàn)將文件或者文件夾壓縮成zip的詳細代碼,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-11-11
基于Spring Boot不同的環(huán)境使用不同的配置方法
下面小編就為大家分享一篇基于Spring Boot不同的環(huán)境使用不同的配置方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-01-01
Spring如何利用@Value注解讀取yml中的map配置
這篇文章主要介紹了Spring如何利用@Value注解讀取yml中的map配置,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-02-02
使用WebSocket實現(xiàn)即時通訊(一個群聊的聊天室)
這篇文章主要為大家詳細介紹了使用WebSocket實現(xiàn)即使通訊,實現(xiàn)一個群聊的聊天室,具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-03-03
SpringBoot如何實現(xiàn)持久化登錄狀態(tài)獲取
這篇文章主要介紹了SpringBoot 如何實現(xiàn)持久化登錄狀態(tài)獲取,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-11-11
SpringBoot中的@ControllerAdvice使用方法詳細解析
這篇文章主要介紹了SpringBoot中的@ControllerAdvice使用方法詳細解析, 加了@ControllerAdvice的類為那些聲明了@ExceptionHandler、@InitBinder或@ModelAttribute注解修飾的 方法的類而提供的專業(yè)化的@Component,以供多個 Controller類所共享,需要的朋友可以參考下2024-01-01

