1. 程式人生 > >java學習之swing和JFC

java學習之swing和JFC

————————————————————————————————————————————————————————————————————————


————————————————————————————————————————————————————————————————————


JViewport 為資料來源提供一個視窗或“視口”,例如,一個文字檔案。該資料來源為由 JViewport 檢視顯示的“scrollable 客戶端”(即資料模型)。JScrollPane 基本上由 JScrollBar、一個 JViewport 以及它們之間的連線組成,

————————————————————————————————————————————————————————————————


JFileChooser 為使用者選擇檔案提供了一種簡單的機制。有關使用 JFileChooser 的更多資訊,請參閱 The Java Tutorial 中的 How to Use File Choosers 一節。

以下程式碼彈出一個針對使用者主目錄的檔案選擇器,其中只顯示 .jpg 和 .gif 影象:

    JFileChooser chooser = new JFileChooser();
    FileNameExtensionFilter filter = new FileNameExtensionFilter(
        "JPG & GIF Images", "jpg", "gif");
    chooser.setFileFilter(filter);
    int returnVal = chooser.showOpenDialog(parent);
    if(returnVal == JFileChooser.APPROVE_OPTION) {
       System.out.println("You chose to open this file: " +
            chooser.getSelectedFile().getName());
    }
 

——————————————————————————————————————————————————————————————————————

例子:

package testSwing;

import java.awt.*;
import java.awt.event.*;

import javax.swing.*;
import javax.swing.filechooser.FileNameExtensionFilter;


public class testSwing extends JFrame {
	String str=null;
	JScrollPane jsp;
	JTextArea jta;
	JFileChooser chooser;
	int returnVal=0;
	public testSwing()
	{
		this.setDefaultCloseOperation( WindowConstants.DO_NOTHING_ON_CLOSE);
	    //JOptionPane標準對話方塊
		JOptionPane.showConfirmDialog(null, "程式開始執行!");    
		 jsp=new JScrollPane();
	     jta=new JTextArea(50,50);
	    //元件新增到JScrollPane獲取返回當前的 JViewport上面
	    jsp.getViewport().add(jta);
	    this.getContentPane().add(jsp);
	     
	   addWindowListener(new WindowAdapter()
	   {
		   public void windowClosing(WindowEvent e)
		   {
			   if(JOptionPane.OK_OPTION==JOptionPane.showConfirmDialog(testSwing.this, "真的要退出嗎?",
					   "結束程式!",JOptionPane.YES_NO_CANCEL_OPTION,
					   JOptionPane.QUESTION_MESSAGE))
			   {
				   dispose();
				   System.exit(0);
			   }
			   
		   }
	   });
	    

	}

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		testSwing dw=new testSwing();
		dw.setSize(200, 200);
		dw.setTitle("test");
		dw.setVisible(true);

	}

}