欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Java Swing中的工具欄(JToolBar)和分割面版(JSplitPane)組件使用案例

 更新時間:2014年10月13日 10:16:05   投稿:junjie  
這篇文章主要介紹了Java Swing中的工具欄(JToolBar)和分割面版(JSplitPane)組件使用案例,本文直接給出代碼實例和效果截圖,需要的朋友可以參考下

一:工具欄(JToolBar)

代碼示例:

復(fù)制代碼 代碼如下:

import javax.swing.*;

//工具欄的使用案例
public class JToolBarDemo2_jigloo extends javax.swing.JFrame {

 private JToolBar myJToolBar;
 private JButton jB_file;
 private JButton jB_edit;
 private JButton jB_tools;
 private JButton jB_help;

 public static void main(String[] args) {
  SwingUtilities.invokeLater(new Runnable() {
   public void run() {
    JToolBarDemo2_jigloo inst = new JToolBarDemo2_jigloo();
    inst.setLocationRelativeTo(null);
    inst.setVisible(true);
   }
  });
 }

 public JToolBarDemo2_jigloo() {
  super();
  initGUI();
 }

 private void initGUI() {
  try {
   setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
   getContentPane().setLayout(null);
   getContentPane().setBackground(new java.awt.Color(255, 128, 255));
   {
    myJToolBar = new JToolBar();
    getContentPane().add(myJToolBar);
    myJToolBar.setBounds(29, 12, 320, 38);
    myJToolBar.setBackground(new java.awt.Color(255, 255, 255));
    {
     jB_file = new JButton();
     myJToolBar.add(jB_file);
     jB_file.setText("\u6587\u4ef6");
     jB_file.setPreferredSize(new java.awt.Dimension(80, 34));
     jB_file.setIcon(new ImageIcon("images//AddNode.jpg"));
     jB_file.setFont(new java.awt.Font("楷體", 0, 14));
     jB_file.setToolTipText("點此每次新增一個結(jié)點");
     jB_file.setBackground(new java.awt.Color(255, 255, 128));
    }
    {
     jB_edit = new JButton();
     myJToolBar.add(jB_edit);
     jB_edit.setText("\u7f16\u8f91");
     jB_edit.setToolTipText("點此每次新增一個結(jié)點");
     jB_edit.setIcon(new ImageIcon("images//AddSide.jpg"));
     jB_edit.setFont(new java.awt.Font("楷體", 0, 14));
     jB_edit.setBackground(new java.awt.Color(255, 255, 128));
     jB_edit.setToolTipText("首次點擊結(jié)束結(jié)點輸入,然后增加一條邊");
     jB_edit.setPreferredSize(new java.awt.Dimension(78, 34));
    }
    {
     jB_tools = new JButton();
     myJToolBar.add(jB_tools);
     jB_tools.setText("\u89c6\u56fe");
     jB_tools.setIcon(new ImageIcon("images//DrawFigure.jpg"));
     jB_tools.setFont(new java.awt.Font("楷體", 0, 14));
     jB_tools.setBackground(new java.awt.Color(255, 255, 128));
     jB_tools.setToolTipText("首次點擊結(jié)束邊的輸入,然后繪制圖形");
     jB_tools.setPreferredSize(new java.awt.Dimension(94, 34));
    }
    {
     jB_help = new JButton();
     myJToolBar.add(jB_help);
     jB_help.setText("\u5e2e\u52a9");
     jB_help.setIcon(new ImageIcon("images//ShortestPath.jpg"));
     jB_help.setFont(new java.awt.Font("楷體", 0, 14));
     jB_help.setBackground(new java.awt.Color(255, 255, 128));
     jB_help.setToolTipText("首次點擊變換按鈕,選擇起始點求其最短路徑");
     jB_help.setPreferredSize(new java.awt.Dimension(95, 34));
    }
   }
   pack();
   setSize(400, 300);
  } catch (Exception e) {
   e.printStackTrace();
  }
 }
}

4.運行截圖:

二:Split Pane(分割面版):

1.基本說明:

    Split Pane(分割面版)一次可將兩個組件同時顯示在兩個顯示區(qū)中,若你想要同時在多個顯示區(qū)顯示組件,你便必須同時使用多個Split Pane。JSplitPane提供兩個常數(shù)讓你設(shè)置到底是要水平分割還是垂直分割。這兩個常數(shù)分別是:HORIZONTAL_SPIT,VERTICAL_SPLIT.除了這兩個重要的常數(shù)外,JSplitPane還提供許多類常數(shù)讓你使用

2.常用方法:

(1).JsplitPane構(gòu)造方法:

JSplitPane():建立一個新的JSplitPane,里面含有兩個默認按鈕,并以水平方向排列.但沒有Continuous Layout功能.  

例如:JSplitPane jSplitPane1 = new JSplitPane();

截圖:

JSplitPane(int newOrientation):建立一個指定水平或垂直方向切割JSplitPane,但沒有Continuous Layout功能。

JSplitPnae(int newOrientation,boolean newContinuousLayout): 建立一個指定水平或垂直方向切割的JSplitPane,且指定是否具有Continuous Layout功能。

JSplitPane(int newOrientation,COmponent newLeftComponent,COmponent newRightComponent):建立一個指定水平或垂直方向切割的JSplitPane,且指定顯示區(qū)所要顯示的組件,但沒有Continuous Layout功能。

例如:jSplitPane = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT, jScrollPane,jLabel);

截圖:

JSplitPane(int newOrientation,boolean newContinuousLayout,Component newLeftComponent,Component newRightComponent):建立一個指定水平或垂直方向切割的JSplitPane,且指定顯示區(qū)所要顯示的組件,并設(shè)置是否Continuous Layout功能。

上面所說的Continuous Layout意思是指當你拖曳切割面版的分隔線時,窗口內(nèi)的組件是否會隨著分隔線的拖曳而動態(tài)改變大小。

3.代碼示例:

復(fù)制代碼 代碼如下:

package com.JSplitPaneDemo.com;

import java.awt.*;
import javax.swing.*;

public class JSplitPaneDemo3 {
 JFrame f;
 Container contentPane;
 public JSplitPaneDemo3() {
  f = new JFrame("JSplitPaneDemo2");
  contentPane = f.getContentPane();

  JLabel label1 = new JLabel("Label 1", JLabel.CENTER);
  label1.setBackground(Color.green);
  // setOpaque(ture)方法的目的是讓組件變成不透明,這樣我們在JLabel上所設(shè)置的顏色顯示出來。
  label1.setOpaque(true);

  JLabel label2 = new JLabel("Label 2", JLabel.CENTER);
  label2.setBackground(Color.pink);
  label2.setOpaque(true);

  JLabel label3 = new JLabel("Label 3", JLabel.CENTER);
  label3.setBackground(Color.yellow);
  label3.setOpaque(true);

  /*
   * 加入label1,label2到splitPane1中,并設(shè)置此splitPane1為水平分割且具有Continuous Layout的
   * 功能。
   */

  JSplitPane splitPane1 = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT,
    false, label1, label2);
  /*
   * 設(shè)置splitPane1的分隔線位置,0.3是相對于splitPane1的大小而定,因此這個值的范圍在0.0~1.0
   * 中。若你使用整數(shù)值來設(shè)置splitPane的分隔線位置,如第34行所示,則所定義的值以pixel為計算單位
   */
  splitPane1.setDividerLocation(0.3);
  splitPane1.setResizeWeight(0.3);
  
  //設(shè)置JSplitPane是否可以展開或收起(如同文件總管一般),設(shè)為true表示打開此功能。
  splitPane1.setOneTouchExpandable(true);
  splitPane1.setDividerSize(10);// 設(shè)置分隔線寬度的大小,以pixel為計算單位。

  JSplitPane splitPane2 = new JSplitPane(JSplitPane.VERTICAL_SPLIT,
    false, splitPane1, label3);
  splitPane2.setDividerLocation(35);
  // 設(shè)置JSplitPane是否可以展開或收起(如同文件總管一般),設(shè)為true表示打開此功能.
  splitPane2.setOneTouchExpandable(false);
  splitPane2.setDividerSize(5);

  contentPane.add(splitPane2);
  f.setSize(250, 200);
  f.setLocation(300, 200);
  f.setVisible(true);
  f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
 }

 public static void main(String[] args) {
  new JSplitPaneDemo3();
 }
}

4.運行截圖:

相關(guān)文章

  • java 中Executor, ExecutorService 和 Executors 間的不同

    java 中Executor, ExecutorService 和 Executors 間的不同

    這篇文章主要介紹了java 中Executor, ExecutorService 和 Executors 間的不同的相關(guān)資料,需要的朋友可以參考下
    2017-06-06
  • Java?多個文件生成zip包、下載zip包的實現(xiàn)代碼

    Java?多個文件生成zip包、下載zip包的實現(xiàn)代碼

    這篇文章主要介紹了Java?多個文件生成zip包、下載zip包,包括文件上傳,文件下載,多個文件打成zip包的操作代碼,本文給大家介紹的非常詳細,需要的朋友可以參考下
    2024-01-01
  • jedis的testWhileIdle用法源碼解讀

    jedis的testWhileIdle用法源碼解讀

    這篇文章主要為大家介紹了jedis的testWhileIdle用法源碼解讀,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-09-09
  • java中關(guān)于內(nèi)部類的使用詳解

    java中關(guān)于內(nèi)部類的使用詳解

    本篇文章介紹了,在java中關(guān)于內(nèi)部類的使用詳解。需要的朋友 參考下
    2013-04-04
  • Spring中@Conditional注解的用法

    Spring中@Conditional注解的用法

    這篇文章主要介紹了Spring中@Conditional注解的用法,@Conditional是Spring4新提供的注解,它的作用是按照一定的條件進行判斷,滿足條件給容器注冊bean,需要的朋友可以參考下
    2024-01-01
  • Sentinel中實現(xiàn)限流的兩種方法

    Sentinel中實現(xiàn)限流的兩種方法

    本文給大家介紹了Sentinel中實現(xiàn)限流的兩種方法,限流是一種通過控制系統(tǒng)對外提供的資源、服務(wù)或接口的訪問數(shù)量或速率,以保護系統(tǒng)免受過載的一種策略,需要的朋友可以參考下
    2024-02-02
  • logback如何自定義日志存儲

    logback如何自定義日志存儲

    這篇文章主要介紹了logback如何自定義日志存儲的操作,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-08-08
  • Java中內(nèi)部類使用方法實戰(zhàn)案例分析

    Java中內(nèi)部類使用方法實戰(zhàn)案例分析

    這篇文章主要介紹了Java中內(nèi)部類使用方法,結(jié)合具體案例形式分析了Java內(nèi)部類原理、調(diào)用方法及相關(guān)使用注意事項,需要的朋友可以參考下
    2019-09-09
  • 動態(tài)修改spring?aop?切面信息提升自動日志輸出框架效率

    動態(tài)修改spring?aop?切面信息提升自動日志輸出框架效率

    這篇文章主要為大家介紹了動態(tài)修改spring?aop切面信息提升自動日志輸出框架效率,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-07-07
  • springboot FeignClient注解及參數(shù)

    springboot FeignClient注解及參數(shù)

    這篇文章主要介紹了springboot FeignClient注解及參數(shù),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-12-12

最新評論