AWT FileDialog类

1 什么是Java AWT FileDialog

FileDialog 控件代表一个对话框窗口,用户可以从中选择一个文件。

2 Java AWT FileDialog的语法

public class FileDialog
   extends Dialog

3 Java AWT FileDialog的构造方法

构造方法 描述
FileDialog(Dialog parent) 创建用于加载文件的文件对话框。
FileDialog(Dialog parent, String title) 创建具有指定标题的文件对话框窗口以加载文件。
FileDialog(Dialog parent, String title, int mode) 创建具有指定标题的文件对话框窗口,用于加载或保存文件。
FileDialog(Frame parent) 创建用于加载文件的文件对话框。
FileDialog(Frame parent, String title) 创建具有指定标题的文件对话框窗口以加载文件。
FileDialog(Frame parent, String title, int mode) 创建具有指定标题的文件对话框窗口,用于加载或保存文件。

4 Java AWT FileDialog的方法

方法 描述
void addNotify() 创建文件对话框的对等体。
String getDirectory() 获取此文件对话框的目录。
String getFile() 获取此文件对话框的选定文件。
FilenameFilter getFilenameFilter() 确定此文件对话框的文件名过滤器。
int getMode() 指示此文件对话框是用于从文件加载还是用于保存到文件。
protected String paramString() 返回表示此 FileDialog 窗口状态的字符串。
void setDirectory(String dir) 将此文件对话窗口的目录设置为指定目录。
void setFile(String file) 将此文件对话窗口的选定文件设置为指定文件。
void setFilenameFilter(FilenameFilter filter) 将此文件对话窗口的文件名过滤器设置为指定的过滤器。
void setMode(int mode) 设置文件对话框的模式。

5 Java AWT FileDialog的例子

让我们看一个简单的Java AWT FileDialog类示例。

package com.yiidian;

import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;

public class AwtControlDemo {

   private Frame mainFrame;
   private Label headerLabel;
   private Label statusLabel;
   private Panel controlPanel;

   public AwtControlDemo(){
      prepareGUI();
   }

   public static void main(String[] args){
      AwtControlDemo  awtControlDemo = new AwtControlDemo();
      awtControlDemo.showFileDialogDemo();
   }

   private void prepareGUI(){
      mainFrame = new Frame("一点教程网:Java AWT Examples");
      mainFrame.setSize(400,400);
      mainFrame.setLayout(new GridLayout(3, 1));
      mainFrame.addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            System.exit(0);
         }        
      });    
      headerLabel = new Label();
      headerLabel.setAlignment(Label.CENTER);
      statusLabel = new Label();        
      statusLabel.setAlignment(Label.CENTER);
      statusLabel.setSize(350,100);

      controlPanel = new Panel();
      controlPanel.setLayout(new FlowLayout());

      mainFrame.add(headerLabel);
      mainFrame.add(controlPanel);
      mainFrame.add(statusLabel);
      mainFrame.setVisible(true);  
   }

   private void showFileDialogDemo(){
      headerLabel.setText("Control in action: FileDialog"); 

      final FileDialog fileDialog = new FileDialog(mainFrame,"Select file");
      Button showFileDialogButton = new Button("Open File");
      showFileDialogButton.addActionListener(new ActionListener() {
         @Override
         public void actionPerformed(ActionEvent e) {
            fileDialog.setVisible(true);
            statusLabel.setText("File Selected :" 
            + fileDialog.getDirectory() + fileDialog.getFile());
         }
      });

      controlPanel.add(showFileDialogButton);
      mainFrame.setVisible(true);  
   }
}

输出结果为:

热门文章

优秀文章