http://vietjack.com/java_swing/index.jsp Copyright © vietjack.com Lớp JFileChooser Java Swing Lớp JFileChooser thành phần cung cấp kỹ thuật đơn giản cho người dùng để lựa chọn file Cú pháp khai báo cho lớp Javax.swing.JFileChooser là: public class JFileChooser extends JComponent implements Accessible Lớp kế thừa phương thức từ lớp sau: javax.swing.JComponent java.awt.Container java.awt.Component java.lang.Object Các constructor lớp JFileChooser Java Swing JFileChooser(): Xây dựng JFileChooser trỏ tới thư mục mặc định người dùng JFileChooser(File currentDirectory): Xây dựng JFileChooser sử dụng File cho path JFileChooser(File currentDirectory, FileSystemView fsv): Xây dựng JFileChooser sử dụng thư mục cung cấp FileSystemView JFileChooser(FileSystemView fsv): Xây dựng JFileChooser sử dụng FileSystemView cho JFileChooser(String currentDirectoryPath): Xây dựng JFileChooser sử dụng path cho JFileChooser(String currentDirectoryPath, FileSystemView fsv): Xây dựng JFileChooser sử dụng thư mục cung cấp FileSystemView http://vietjack.com/ Trang chia sẻ học online miễn phí Page http://vietjack.com/java_swing/index.jsp Copyright © vietjack.com Các phương thức lớp JFileChooser Java Swing STT Phương thức & Miêu tả void removeActionListener(ActionListener l) Gỡ bỏ ActionListener từ file chooser boolean removeChoosableFileFilter(FileFilter f) Xóa trình lọc filter từ danh sách trình lọc file lựa chọn người dùng void rescanCurrentDirectory() Nói cho UI cần quét lại danh sách file từ thư mục void resetChoosableFileFilters() Phục hồi danh sách trình lọc file lựa chọn trạng thái ban đầu void setAcceptAllFileFilterUsed(boolean b) Xác định xem AcceptAll FileFilter có sử dụng lựa chọn có sẵn khơng danh sách trình lọc chọn void setAccessory(JComponent newAccessory) Thiết lập thành phần phụ thêm void setApproveButtonMnemonic(char mnemonic) Thiết lập mnemonic nút xác nhận sử dụng ký tự void setApproveButtonMnemonic(int mnemonic) Thiết lập mnemonic nút xác nhận sử dụng keycode dạng số http://vietjack.com/ Trang chia sẻ học online miễn phí Page http://vietjack.com/java_swing/index.jsp Copyright © vietjack.com void setApproveButtonText(String approveButtonText) Thiết lập text sử dụng ApproveButton FileChooserUI 10 void setApproveButtonToolTipText(String toolTipText) Thiết lập tooltip text sử dụng ApproveButton 11 void setControlButtonsAreShown(boolean b) Thiết lập thuộc tính có hay khơng nút xác nhận hủy bỏ hiển thị file chooser 12 void setCurrentDirectory(File dir) Thiết lập thư mục 13 void setDialogTitle(String dialogTitle) Thiết lập chuỗi tiêu đề cửa sổ JFileChooser 14 void setDialogType(int dialogType) Thiết lập kiểu dialog 15 void setDragEnabled(boolean b) Thiết lập thuộc tính dragEnabled property, mà phải true để kích hoạt trình xử lý hoạt động drag tự động (phần hoạt động drag drop) thành phần 16 void setFileFilter(FileFilter filter) Thiết lập trình lọc file 17 void setFileHidingEnabled(boolean b) Bật tắt chế độ ẩn file http://vietjack.com/ Trang chia sẻ học online miễn phí Page http://vietjack.com/java_swing/index.jsp 18 Copyright © vietjack.com void setFileSelectionMode(int mode) Thiết lập JFileChooser phép người dùng: lựa chọn file, thư mục hai 19 void setFileSystemView(FileSystemView fsv) Thiết lập file system view mà JFileChooser sử dụng để truy cập tạo nguồn file system, chẳng hạn tìm đĩa mềm lấy danh sách root drive 20 void setFileView(FileView fileView) Thiết lập file view để sử dụng để lấy thông tin UI, chẳng hạn icon mà biểu diễn file miêu tả kiểu file 21 void setMultiSelectionEnabled(boolean b) Thiết lập file chooser phép lựa chọn multi-file 22 void setSelectedFile(File file) Thiết lập file lựa chọn 23 void setSelectedFiles(File[] selectedFiles) Thiết lập danh sách file lựa chọn file chooser thiết lập dạng multifile 24 protected void setup(FileSystemView view) Thực khởi tạo thiết lập constructor chung 25 int showDialog(Component parent, String approveButtonText) Popup hộp thoại file chooser tùy biến với nút xác nhận tùy biến 26 int showOpenDialog(Component parent) http://vietjack.com/ Trang chia sẻ học online miễn phí Page http://vietjack.com/java_swing/index.jsp Copyright © vietjack.com Hiển thị hộp thoại "Open File" 27 int showSaveDialog(Component parent) Hiển thị hộp thoại "Save File" 28 void updateUI() Phục hồi thuộc tính UI giá trị L&F 29 boolean accept(File f) Trả true file nên hiển thị 30 void addActionListener(ActionListener l) Thêm ActionListener tới file chooser 31 void addChoosableFileFilter(FileFilter filter) Thêm lọc filter tới danh sách lọc file lựa chọn người dùng 32 void approveSelection() Được gọi UI người dùng nhấn nút xác nhận (được gán nhãn "Open" "Save", theo mặc định) 33 void cancelSelection() Được gọi UI người dùng chọn nút Cancel 34 void changeToParentDirectory() Các thay đổi tới thư mục để thiết lập tới thư mục cha thư mục 35 protected JDialog createDialog(Component parent) Tạo trả JDialog bao hộp thoại chỉnh vào frame http://vietjack.com/ Trang chia sẻ học online miễn phí Page http://vietjack.com/java_swing/index.jsp Copyright © vietjack.com thành phần cha void ensureFileIsVisible(File f) 36 Đảm bảo file cho nhìn thất, khơng bị ẩn protected void fireActionPerformed(String command) 37 Thông báo cho tất Listener mà đăng ký nhận thông báo kiểu kiện (event type) FileFilter getAcceptAllFileFilter() 38 Trả trình lọc file AcceptAll Chương trình ví dụ lớp JFileChooser package com.vietjack.gui; import java.awt.*; import java.awt.event.*; import javax.swing.*; public class SwingControlDemo { private JFrame mainFrame; private JLabel headerLabel; private JLabel statusLabel; private JPanel controlPanel; public SwingControlDemo(){ prepareGUI(); } public static void main(String[] args){ http://vietjack.com/ Trang chia sẻ học online miễn phí Page http://vietjack.com/java_swing/index.jsp SwingControlDemo Copyright © vietjack.com swingControlDemo = new SwingControlDemo(); swingControlDemo.showFileChooserDemo(); } private void prepareGUI(){ mainFrame = new JFrame("Vi du Java Swing"); mainFrame.setSize(400,400); mainFrame.setLayout(new GridLayout(3, 1)); mainFrame.addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent windowEvent){ System.exit(0); } }); headerLabel = new JLabel("", JLabel.CENTER); statusLabel = new JLabel("",JLabel.CENTER); statusLabel.setSize(350,100); controlPanel = new JPanel(); controlPanel.setLayout(new FlowLayout()); mainFrame.add(headerLabel); mainFrame.add(controlPanel); mainFrame.add(statusLabel); mainFrame.setVisible(true); } private void showFileChooserDemo(){ headerLabel.setText("Control in action: JFileChooser"); final JFileChooser fileDialog = new JFileChooser(); JButton showFileDialogButton = new JButton("Open File"); http://vietjack.com/ Trang chia sẻ học online miễn phí Page http://vietjack.com/java_swing/index.jsp Copyright © vietjack.com showFileDialogButton.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { int returnVal = fileDialog.showOpenDialog(mainFrame); if (returnVal == JFileChooser.APPROVE_OPTION) { java.io.File file = fileDialog.getSelectedFile(); statusLabel.setText("File Selected :" + file.getName()); } else{ statusLabel.setText("Open command cancelled by user." ); } } }); controlPanel.add(showFileDialogButton); mainFrame.setVisible(true); } } http://vietjack.com/ Trang chia sẻ học online miễn phí Page ... file AcceptAll Chương trình ví dụ lớp JFileChooser package com.vietjack.gui; import java. awt.*; import java. awt.event.*; import javax .swing. *; public class SwingControlDemo { private JFrame mainFrame;...http://vietjack.com /java_ swing/ index.jsp Copyright © vietjack.com Các phương thức lớp JFileChooser Java Swing STT Phương thức & Miêu tả void removeActionListener(ActionListener... Copyright © vietjack.com swingControlDemo = new SwingControlDemo(); swingControlDemo.showFileChooserDemo(); } private void prepareGUI(){ mainFrame = new JFrame("Vi du Java Swing" ); mainFrame.setSize(400,400);