精华内容
下载资源
问答
  • Google表格的脚本,允许用户从对话框中选择多个值。 用户A1单元格定义这些值。 安装 为了将此脚本添加到Google工作表,请转到“工具”->“脚本编辑器”。 此存储库,打开Code.gs文件,然后将其所有内容...
  • 选项对话框

    千次阅读 2012-11-03 21:35:05
    1.JOptionPane有4用于显示这些对话框的静态方法: ...  *int showComfirmDialog():显示一条消息并等待用户确认,... *showOptionDialog:显示一条消息并获得用户一组选选项中选择,返回表示被选项的一整数  *

    1.JOptionPane有4个用于显示这些对话框的静态方法:

        *void showMessageDialog():显示一条消息并等待用户点击ok

        *int showComfirmDialog():显示一条消息并等待用户确认,返回表示备选项的一个整数

        *showOptionDialog:显示一条消息并获得用户在一组选选项中的选择,返回表示被选项的一个整数

        *showInputDialog:显示一条消息并获得用户输入的一行文本,返回用户选择或输入的字符串(使用showInputDialog时,可以指定任意的选项,需要为选项提供一个对象数组,每个数组元素可以是下列类型之一:String,Icon,Component)

    2.对话框具有下列组件

     (1)一个图标(左侧的图标由下面5种类型决定:ERROR_MESSAGE,INFORMATION_MESSAGE,WARNING_MESSAGE,QUESTION_MESSAGE,PLAIN_MESSAGE(没有图标))

     (2)一个消息

     (3)一个或多个按钮(当调用showMessageDialog和showInputDialog时,只能看到一组标准按钮。当调用showConfirmDialog时,可以选择下面四种选项类型之一:DEFAULT_OPTION,YES_NO_OPTION,YES_NO_CANCEL_OPTION,OK_CANCEL_OPTION)

    3.创建对话框(需要从JDialog派生一个类)

      (1)具体过程如下

                *在对话框构造器中,调用超类JDialog的构造器(public JDialog(Frame parent,String title,boolean modal))modal:true代表模式对话框(阻隔其他窗口的输入)

                *添加对话框的用户界面组件

                *添加事件处理器

                *设置对话框的大小

    4.简历文件对话框并获取用户选择信息的步骤:

     (1)建立一个JFileChooser对象,与JDialog类的构造器不同,他不需要指定父组件,允许在多个框架中重用一个文件选择器,例如:JFileChooser chooser = new JFileChooser();

     (2)调用setCurrentDirectory方法设置当前目录:chooser.setCurrentDirectory(new Fle("."));

     (3)如果有一个想要作为用户选择的默认文件名,可以使用setSelectedFile方法进行指定,chooser.setSelectedFile(new File(filename));

     (4)如果允许用户在对话框中选择多个文件,需要调用setMultiSelectionEnabled方法。

     (5)如果想让对话框仅显示某一种类型的文件,需要设置文件过滤器

     (6)在默认情况下,用户在文件选择其中只能选择文件,如果希望选择目录,需要调用setFileSelectionMode方法。参数值为:JFileChooser.FILES_ONLY,JFileChooser.DIRECTORIES_ONLY或者JFileChooser.FILES_AND_DIRECTORIES

     (7)调用showOpenDialog或者showSaveDialog方法显示对话框,必须为这些调用提供父组件int result = chooser.showOpenDialog(parent)或者 int result = chooser.showSaveDialog(parent);

     (8)调用getSelectedFile()或者 getSelectedFiles()方法获取用户选择的一个或多个文件,如果需要知道文件对象名时,可以调用getPath方法,如String filename = chooser.getSelectedFile().getPath();

    5.设置文件过滤器

    (1)设置文件过滤器只要实现FileFileter超类中的两个方法即可:

             *public boolean accept(File f);//检测是否应该接受一个文件

             *public String getDescription();//返回显示在文件选择器对话框中显示的文件类型的描述信息

    (2)有了文件过滤器对象,就可以调用JFileChooser类中的setFileFileter方法,将这个对象安装到文件选择器对象中:chooser.setFileFilter(new FileNameExtensionFIlter("Image files","gif","jpg"));

     (3)可以为一个文件选择器安装多个过滤器:

              chooser.addChoosableFileFilter(filter1);

              若想放弃All files过滤器,需要调用chooser.setAcceptAllFileFilterUsed(false);

    6.如果想让某种特定的文件夹显示不同的图标,需要安装自己的文件视图。需要扩展FileView并实现下面5个方法:

              *Icon getIcon(File f);

              *String getName(File f);

              *String getDescription(File f);

              *String getTypeDescription(File f);

              *Boolean isTraversable(File f);

     然后,调用setFileView方法将文件视图安装到文件过滤器中,文件选择器调用isTraversable方法来决定是否在用户点击一个目录的时候打开这个目录。该方法返回一个Boolean对象,而不是boolean值。

    7.颜色选择器(JColorChooser)

     (1)用颜色选择器显示模式对话框:Color selectedColor = JColorChooser.showDialog(parent,title,initialColor);

     (2)也可以显示无模式颜色选择器对话框,需要提供:

              *一个父组件

              *对话框的标题

              *选择模式/无模式对话框的标志

              *颜色选择器

              *OK和Cancel按钮的监听器

    展开全文
  • 使用的教材是java核心技术卷1,我将跟着这本书的章节同时配合视频资源来进行学习基础java知识。...day081 Swing用户界面组件(六:对话框)(选项对话框、创建对话框、数据交换、文件对话框、颜色选择器) ...

    使用的教材是java核心技术卷1,我将跟着这本书的章节同时配合视频资源来进行学习基础java知识。

    day082   Swing用户界面组件(七:对话框)(选项对话框、创建对话框、数据交换、文件对话框、颜色选择器)

    到目前为止,所有的用户界面组件都显示在应用程序创建的框架窗口中。这对于编写运行在Web浏览器中的applets来说是十分常见的情况。但是,如果编写应用程序,通常就需要弹出独立的对话框来显示信息或者获取用户信息。与大多数的窗口系统一样,AWT也分为模式对话框和无模式对话框。所谓模式对话框是指在结束对它的处理之前,不允许用户与应用程序的其余窗口进行交互。模式对话框主要用于在程序继续运行之前获取用户提供的信息。例如,当用户想要读取文件时,就会弹出一个模式对话框。用户必须给定一个文件名,然后程序才能够开始读操作。只有用户关闭(模式)对话框之后,应用程序才能够继续执行。所谓无模式对话框是指允许用户同时在对话框和应用程序的其他窗口中输入信息。使用无模式对话框的最好例子就是工具栏。工具栏可以停靠在任何地方,并且用户可以在需要的时候,同时与应用程序窗口和工具栏进行交互。


    1.选项对话框

    Swing有一套简单的对话框,用于获取用户的一些简单信息。JOptionPane有4个用于显示这些对话框的静态方法:

    showMessageDialog:showConfirmDialog:showOptionDialog:showInputDialog:显示一条消息并等待用户点击OK显示一条消息并等待用户确认(与OK/Cancel类似)显示一条消息并获得用户在一组选项中的选择显示一条消息并获得用户输人的一行文本。

    图显示了一个典型的对话框。可以看到,对话框有下列组件:•一个图标•一条消息•一个或多个按钮

    输人对话框有一个用于接收用户输入的额外组件。它既可能是用于输入任何字符串的文本域,也可能是允许用户从中选择的组合框。这些对话框的确切布局和为标准消息类型选择的图标都取决于具体的观感。左侧的图标将由下面5种消息类型决定

    ERROR_MESSAGE
    INFORMATION_MESSAGE
    WARNINC_MESSAGE
    QUESTION_MESSAGE
    PLAIN_MESSAGE

    PLAIN_MESSAGE类型没有图标。每个对话框类型都有一个方法,可以用来提供自己的图标,以替代原来的图标。可以为每个对话框类型指定一条消息。这里的消息既可以是字符串、图标、用户界面组件,也可以是其他类型的对象。下面是显示消息对象的基本方式:String:Icon:ComponentObject[]:绘制字符串显示图标显示组件显示数组中的所有对象,依次叠加,任何其他对象:调用toString方法来显示结果字符串。

    当然,提供字符串消息是最常见的情况,而提供一个Component会带来更大的灵活性。这是因为通过调用paintComponent方法可以绘制自己想要的任何内容。位于底部的按钮取决于对话框类型和选项类型。当调用showMessageDialog和showInputDialog时,只能看到一组标准按钮(分别是OK/Cancel)。当调用showConfirmDialog时,可以选择下面四种选项类型之一:

    DEFAULL0PTI0N
           YES_NO_OPTION
           YES_N0_CANCEL_0PTI0N
           OK_CANCELJPTION

    使用showOptionDialog可以指定任意的选项。这里需要为选项提供一个对象数组。每个数组元素可以是下列类型之一:

    String:使用字符串标签创建一个按钮Icon:使用图标创建一个按钮Component:显示这个组件

    其他类型的对象:使用toString方法然后用结果字符串作为标签创建按钮。showConfirmDialog和showOptionDialog返回一个整数用来表示用户选择了哪个按钮。对于选项对话框来说,这个值就是被选的选项的索引值或者是CLOSED_OPTION(此时用户没有选择可选项,而是关闭了对话框)。

    这些选项似乎令人感到迷惑不解,实际上非常简单步骤如下:

    1)选择对话框的类型(消息、确认、选项或者输人)。

    2)选择图标(错误、信息、警告、问题、无或者自定义)。

    3)选择消息(字符串、图表、自定义组件或者它们的集合)。

    4)对于确认对话框,选择选项类型(默认、Yes/No、Yes/No/Cancel或者Ok/Cancel)。

    5)对于选项对话框,选择选项(字符串、图表或者自定义组件)和默认选项。

    6)对于输人对话框,选择文本框或者组合框。

    7)调用JOptionPaneAPI中的相应方法。


    2.创建对话框

    要想实现一个对话框,需要从JDialog派生一个类。这与应用程序窗口派生于JFrame的过程完全一样。具体过程如下:

    1)在对话框构造器中,调用超类JDialog的构造器。

    2)添加对话框的用户界面组件。

    3)添加事件处理器。

    4)设置对话框的大小。

    在调用超类构造器时,需要提供拥有者框架(ownerframe)、对话框标题及模式特征。

    拥有者框架控制对话框的显示位置,如果将拥有者标识为null,那么对话框将由一个隐藏框架所拥有。

    模式特征将指定对话框处于显示状态时,应用程序中其他窗口是否被锁住。无模式对话框不会锁住其他窗口,而有模式对话框将锁住应用程序中的所有其他窗口(除对话框的子窗口外)。用户经常使用的工具栏就是无模式对话框,另一方面,如果想强迫用户在继续操作之前提供一些必要的信息就应该使用模式对话框。

    下面是一个对话框的例子:

    public AboutDialog extends JDialog
    {
        public AboutDialog(JFrame owner)
        {
            super(owner, "About DialogTest", true);
            add(new]Label(
                "<htmlxhlxi>Core]ava</ix/hlxhr>By Cay Horstmann</htnn>"),
                    BorderLayout.CENTER);
    
            JPanel panel = new JFanel();
            JButton ok = new JButton("OK");
            ok.addActionListener(event-> setVisible(false));    
            panel .add(ok);
            add(panel , BorderLayout.SOUTH);
            setSize(250, 150);
        }
    }

    正如看到的,构造器添加了用户界面组件,在本例中添加的是标签和按钮,并且为按钮设置了处理器,然后还设置了对话框的大小。要想显示对话框,需要建立一个新的对话框对象,并让它可见:

    JDialog dialog = new AboutDialog(this);

    dialog.setVisible(true);

    实际上,在下面的示例代码中,只建立了一次对话框,无论何时用户点击About按钮,都可以重复使用它。

    if(dialog==null)//first time

        dialog=new AboutDialog(this);

         dialog.setVisible(true);

    当用户点击OK按钮时,该对话框将被关闭。下面是在OK按钮的事件处理器中的处理代码:

    ok.addActionListener(event->setVisible(false));

    当用户点击Close按钮关闭对话框时,对话框就被隐藏起来。与JFrame—样,可以覆盖setDefaultCloseOperation方法来改变这个行为。


    3.数据交换

    使用对话框最通常的目的是获取用户的输入信息。在前面已经看到,构造对话框对象非常简单:首先初始化数据,然后调用setViSible(tme)就会在屏幕上显示对话框。现在,看看如何将数据传人传出对话框。

    如图所示的对话框,可以用来获得用户名和用户密码以便连接某些在线服务。

    对话框应该提供设置默认数据的方法。例如,示例程序中的PasswordChooser类提供了一个setUser方法,用来将默认值放到下面的字段中:

    public void setUser(User u)
    {
        username.setText(u_getName());
    
    }

    一旦设置了默认值(如果需要),就可以调用setViSible(true)让对话框显示在屏幕上。

    然后用户输人信息,点击0K或者Cancel按钮。这两个按钮的事件处理器都会调用SetVisible(false)终止对setVisible(true)的调用。另外,用户也可以选择关闭对话框。如果没有为对话框安装窗口监听器,就会执行默认的窗口结束操作,即对话框变为不可见,这也中止了对setVisible(true)的调用。

    重要的问题是在用户解除这个对话框之前,一直调用setVisible(true)阻塞。这样易于实现模式对话框。希望知道用户是接收对话框,还是取消对话框。

    设置了OK标志,在对话框显示之前是false。只有OK按钮的事件处理器可以将它设置为true。这样,就可以获得对话框中的用户输入。


    4.文件对话框

    当编写应用程序时,通常希望可以打开和保存文件。一个好的文件对话框应该可以显示文件和目录,可以让用户浏览文件系统,这是很难编写的。人们肯定不愿意从头做起。很幸运,Swing中提供了JFileChooser类,它可以显示一个文件对话框,其外观与本地应用程序中使用的文件对话框基本一样。JFileChooser是一个模式对话框。注意,JFileChooser类并不是JDialog类的子类。需要调用showOpenDialog,而不是调用SetVisible(true)显示打开文件的对话框,或者调用showSaveDialog显示保存文件的对话框。接收文件的按钮被自动地标签为Open或者Save。也可以调用showDialog方法为按钮设定标签。图是文件选择对话框的样例。

    下面是建立文件对话框并且获取用户选择信息的步骤:

    1)建立一个JFileChooser对象。与JDialog类的构造器不同,它不需要指定父组件。允许在多个框架中重用一个文件选择器。例如:JFileChooser chooser=new JFileChooser();

    2)调用setCurrentDirectory方法设置当前目录。例如,使用当前的工作目录:

    chooser.setCurrentDirectory(new File("."));

    需要提供一个File对象。这里只需要知道构造器File(StringfileName)能够将一个文件或目录名转化为一个File对象即可。

    3)如果有一个想要作为用户选择的默认文件名,可以使用setSelectedFile方法进行指定:

    chooser.setSelectedFi1e(new File(filename));

    4)如果允许用户在对话框中选择多个文件,需要调用setMultiSelectionEnabled方法。当然,这是可选的。

    chooser.setMultiSelectionEnabled(true);

    5)如果想让对话框仅显示某一种类型的文件(如,所有扩展名为.gif的文件),需要设置文件过滤器。

    6)在默认情况下,用户在文件选择器中只能选择文件。如果希望选择目录,需要调用setFileSelectionMode方法。参数值为:JFileChooser.FILES_ONLY(默认值),JFileChooser.DIRECTORIES_ONLY或者JFileChooser.FILES_AND_DIRECTORIES。

    7)调用showOpenDialog或者showSaveDialog方法显示对话框。必须为这些调用提供父组件:

    int result=chooser.showOpenDialog(parent):或者int result=chooser.showSaveDialog(parent);

    这些调用的区别是“确认按钮”的标签不同。点击“确认按钮”将完成文件选择。也可以调用showDialog方法,并将一个显式的文本传递给确认按钮:

    int result=chooser.showDialog(parent,"Select");

    仅当用户确认、取消或者离开对话框时才返回调用。返回值可以是JFileChooser.APPROVE—OPTION、JFileChooser.CANCEL_OPTION或者JFileChooser.ERROR—OPTION。

    8)调用getSelectedFile()或者getSelectedFiles()方法获取用户选择的一个或多个文件。这些方法将返回一个文件对象或者一组文件对象。如果需要知道文件对象名时,可以调用getPath方法。例如:

    String filename=chooser.getSelectedFile().getPath();

    在大多数情况下,这些过程比较简单。使用文件对话框的主要困难在于指定用户需要选择的文件子集。例如,假定用户应该选择GIF图像文件。后面的文件选择器就应该只显示扩展名为.gif的文件,并且,还应该为用户提供反馈信息来说明显示的特定文件类别,如“GIF图像”。然而,情况有可能会更加复杂。如果用户应该选择JPFG图像文件,扩展名就可以是.jpg或者jpeg。与重新编码实现这种复杂情况相比,文件选择器的设计者提供了一种更好的机制:若想限制显示的文件,需要创建一个实现了抽象类jaVax.swing.filechooser.FileFilter的对象。文件选择器将每个文件传递给文件过滤器,只有文件过滤器接受的文件才被最终显示出来。有两个子类可用:可以接受所有文件的默认过滤器和可以接受给定扩展名的所有文件的过滤器。其实,设计专用文件过滤器非常简单,只要实现FileFilter超类中的两个方法即可:

    public boolean accept(File f);

    public String getDescription();

    第一个方法检测是否应该接受一个文件,第二个方法返回显示在文件选择器对话框中显示的文件类型的描述信息。

    一旦有了文件过滤器对象,就可以调用JFileChooser类中的setFileFilter方法,将这个对象安装到文件选择器对象中:

    chooser.setFileFilter(new FileNameExtensionFi1ter("Image files","gif","jpg"));

    可以为一个文件选择器安装多个过滤器:

    chooser.addChoosableFi1eFi1ter(filterl):

    chooser.addChoosableFi1eFi1ter(filter2);

    用户可以从文件对话框底部的组合框中选择过滤器。在默认情况下,Allfiles过滤器总是显示在组合框中。这是一个很好的主意,特别是在使用这个程序的用户需要选择一个具有非标准扩展名的文件时。然而,如果你想禁用Allfiles过滤器,需要调用:

    chooser.setAcceptAUFileFilterUsed(false)

    最后,可以通过为文件选择器显示的每个文件提供特定的图标和文件描述来定制文件选择器。这需要应用一个扩展于javax.swing.filechooser包中的FileView类的对象。这是一个高级技巧。在通常情况下,不需要提供文件视图—可插观感会提供。然而,如果想让某种特定的文件类型显示不同的图标,就需要安装自己的文件视图。这要扩展FileView并实现下面5个方法:

    Icon getIcon(File f);

    String getName(File f);

    String getDescription(File f);

    String getTypeDescription(Fi1ef);

    Boolean isTraversable(File f);

    然后,调用setFileView方法将文件视图安装到文件选择器中。文件选择器为每个希望显示的文件或目录调用这些方法。如果方法返回的图标、名字或描述信息为null,那么文件选择器将会构造当前观感的默认文件视图。这样处理很好,其原因是这样只需处理具有不同显示的文件类型。

    文件选择器调用isTraversable方法来决定是否在用户点击一个目录的时候打开这个目录。请注意,这个方法返回一个Boolean对象,而不是boolean值。看起来似乎有点怪,但实际上很方便—如果需要使用默认的视图,则返回null。文件选择器将会使用默认的文件视图。换句话说,这个方法返回的Boolean对象能给出下面三种选择:真(Boolean.TRUE),假(Boolean.FALSE)和不关心(null)。


    5.颜色选择器

    一个高质量的文件选择器是一个很复杂的用户界面组件,人们肯定不愿意自己去编写它。许多用户界面工具包还提供了另外一些常用的对话框:选择日期/时间、货币值、字体以及颜色等。这将会带来两个方面的好处:程序员可以直接地使用这些高质量的代码而不用从头做起,并且用户可以得到一致的组件使用体验。除了文件选择器外,Swing还提供了一种选择器—JColorChooser(如图。可以利用这个选择器选取颜色。与JFileChooser样,颜色选择器也是一个组件,而不是一个对话框,但是它包含了用于创建包含颜色选择器组件的对话框方法。

    下面这段代码说明了如何利用颜色选择器显示模式对话框:

    Color selectedColor = JColorChooser.showDialog(parent,title, initialColor);

    另外,也可以显示无模式颜色选择器对话框,需要提供:

    •一个父组件。

    •对话框的标题。

    •选择模式/无模式对话框的标志。

    •颜色选择器。

    •0K和Cancel按钮的监听器(如果不需要监听器可以设置为null)。

    下面这段代码将会创建一个无模式对话框。当用户按下OK键时,对话框的背景颜色就会被设成所选择的颜色。

    chooser = new JColorChooser();
    dialog =JColorChooser.createDialog(
    parent,
    "Background Color",
    false /*not modal*/»
    chooser,
    event->setBackground(chooser.getColor()),
    null /*no Cancel button listener*/);


     

    展开全文
  • VB: 用通用对话框同时选择多个文件

    千次阅读 2005-05-23 23:13:00
    --------------------------------------用通用对话框同时选择多个文件-------------------------------------- 洪恩在线 求知无限--------------------------------------------名称-------------作用-----------...

    '--------------------------------------
    '用通用对话框同时选择多个文件
    '--------------------------------------
    ' 洪恩在线 求知无限
    '--------------------------------------
    '------名称-------------作用------------
    '       mnuOpen         “打开”菜单项
    '       mnuExit         “退出”菜单项
    '       cmdExit         “退出”按钮
    '       CommonDialog1   通用对话框
    '       Label1-2        标签
    '       List1           显示选中文件的列表框 ListBox
    '--------------------------------------

    Private Sub cmdExit_Click()
    Unload Me
    End Sub

    Private Sub Form_Load()

    End Sub

    Private Sub mnuExit_Click()
    Unload Me
    End Sub


    Private Sub mnuOpen_Click()
     Dim I As Integer
        Dim Y As Integer
        Dim Z As Integer
        '存储文件名的数组
        Dim FileNames$()

        CommonDialog1.FileName = ""
        CommonDialog1.Filter = "All Files|*.*"
        '为“打开”和“另存为”对话框返回或设置选项。
        '语法
        'object.Flags [= value]
        '------------------------------------------------------
        'Flags 属性语法有下列部分:
        '部分       描述
        '------------------------------------------------------
        'object     对象表达式,其值是“应用于”列表中的对象。
        'value      如“设置值”中所描述,是为“打开”和“另存为”对话框指定选项的常数或值。
        '------------------------------------------------------
        'Value 的设置值是:
        '------------------------------------------------------
        '常数                       值      描述
        '------------------------------------------------------
        'cdlOFNAllowMultiselect     &H200   它指定文件名列表框允许多重选择。运行时,通过按 SHIFT 键以及使用 UP ARROW 和 DOWN ARROW 键可选择多个文件。作完此操作后,FileName 属性就返回一个包含全部所选文件名的字符串。串中各文件名用空格隔开。
        'cdlOFNCreatePrompt         &H2000  当文件不存在时对话框要提示创建文件。该标志自动设置 cdlOFNPathMustExist 和 cdlOFNFileMustExist 标志。
        'cdlOFNExplorer             &H80000 它使用类似资源管理器的打开一个文件的对话框模板。适用于 Windows 95 和 Windows NT 4.0。
        'cdlOFNExtensionDifferent   &H400   它指示返回的文件扩展名与 DefaultExt 属性指定的扩展名不一致。如果 DefaultExt 属性是 Null,或者扩展相匹配,或者没有扩展时,此标志不设置。当关闭对话框时,可以检查这个标志的值。
        'cdlOFNFileMustExist        &H1000  它指定只能输入文件名文本框已经存在的文件名。如果该标志被设置,则当用户输入非法的文件名时,要显示一个警告。该标志自动设置 cdlOFNPathMustExist 标志。
        'cdlOFNHelpButton           &H10    使对话框显示帮助按钮。
        'cdlOFNHideReadOnly         &H4     隐藏只读复选框。
        'cdlOFNLongNames            &H200000使用长文件名。
        'cdlOFNNoChangeDir          &H8     强制对话框将对话框打开时的目录置成当前目录。
        'cdlOFNNoDereferencelinks   &H100000不要间接引用外壳链接(也称作快捷方式)。缺省时,选取外壳链接会引起它被外壳间接引用。
        'cdlOFNNoLongNames          &H40000 无长文件名。
        'cdlOFNNoReadOnlyReturn     &H8000  它指定返回的文件不能具有只读属性,也不能在写保护目录下面。
        'cdlOFNNoValidate           &H100   它指定公共对话框允许返回的文件名中含有非法字符。
        'cdlOFNOverwritePrompt      &H2     使“另存为”对话框当选择的文件已经存在时应产生一个信息框,用户必须确认是否覆盖该文件。
        'cdlOFNPathMustExist        &H800   它指定只能输入有效路径。如果设置该标志,输入非法路径时,应显示一个警告信息。
        'cdlOFNReadOnly             &H1     建立对话框时,只读复选框初始化为选定。该标志也指示对话框关闭时只读复选框的状态。
        'cdlOFNShareAware           &H4000  它指定忽略共享冲突错误。
        '-----------------------------------------------------
        CommonDialog1.Flags = cdlOFNAllowMultiselect
        CommonDialog1.Action = 1
        '它指定文件名列表框允许多重选择。运行时,通过按 SHIFT 键以及
        '使用 UP ARROW 和 DOWN ARROW 键可选择多个文件。作完此操作后,
        'FileName 属性就返回一个包含全部所选文件名的字符串。
        '串中各文件名用空格隔开。
        CommonDialog1.FileName = CommonDialog1.FileName & Chr(32)
        '从返回的字符串中分离出文件名
        '经过分离后FileNames(Y)数组存放着选择的文件名信息
        '如果只有一个文件 FileNames(0)=“文件名”
        '如果有多个文件 FileNames(0)=“路径名” FileNames(1--y)=“文件名”
        '这时我们需要对数组进行处理
        Z = 1
        For I = 1 To Len(CommonDialog1.FileName)
            'InStr函数,返回 Variant (Long),指定一字符串在另一字符串中最先出现的位置。
            '语法 InStr(起点位置, string1, string2)
            I = InStr(Z, CommonDialog1.FileName, Chr(32))
            If I = 0 Then Exit Sub
            ReDim Preserve FileNames(Y)
            'Mid函数,返回 Variant (String),其中包含字符串中指定数量的字符。
            '语法 Mid(string, start[, length])
            FileNames(Y) = Mid(CommonDialog1.FileName, Z, I - Z)
            Z = I + 1
            Y = Y + 1
        Next
        '先清空列表框中已有内容
        List1.Clear
        '如果只有一个文件 FileNames(0)=“文件名”
        If Y = 1 Then
            List1.AddItem FileNames(0)
        '如果文件个数为多个,将“路径”+“/”+“文件名”后作为完整的文件名
        Else
           
            For I = 1 To Y - 1
                List1.AddItem FileNames(0) & "/" & FileNames(I)
            Next
        End If
    End Sub

    展开全文
  • 文章目录ColorDialog(颜色选择对话框)属性及方法样式使用FolderBrowserDialog(文件夹选择对话框)属性及方法样式使用FileDialog属性及方法OpenFileDialog(文件选择对话框)属性及方法样式使用SaveFileDialog...

    C#面向桌面应用开发时常用到的几种对话框的简单使用和常用属性的说明

    WPF下需要引用命名空间:using System.Windows.Forms;

    ColorDialog(颜色选择对话框)

    表示一个通用对话框,该对话框显示可用的颜色以及允许用户定义自定义颜色的控件。

    属性及方法

    属性及方法名说明
    Reset()将所有选项重新设置为其默认值,将最后选定的颜色重新设置为黑色,将自定义颜色重新设置为其默认值。
    AllowFullOpen获取或设置一个值,该值指示用户是否可以使用该对话框定义自定义颜色。
    AnyColor获取或设置一个值,该值指示对话框是否显示基本颜色集中可用的所有颜色。
    Color获取或设置用户选定的颜色
    CustomColors获取或设置对话框中显示的自定义颜色集。
    FullOpen获取或设置一个值,该值指示用于创建自定义颜色的控件在对话框打开时是否可见。
    ShowHelp获取或设置一个值,该值指示在颜色对话框中是否显示“帮助”按钮。
    SolidColorOnly获取或设置一个值,该值指示对话框是否限制用户只选择纯色。

    样式

    在这里插入图片描述

    使用

    System.Windows.Forms.ColorDialog dialog = new System.Windows.Forms.ColorDialog();
    dialog.Color = System.Drawing.Color.OrangeRed;
    dialog.ShowHelp = false;
    System.Windows.Forms.DialogResult result = dialog.ShowDialog();
    

    FolderBrowserDialog(文件夹选择对话框)

    提示用户选择文件夹。无法继承此类。

    属性及方法

    属性及方法名说明
    Reset()将属性重置为其默认值。
    Description获取或设置对话框中在树视图控件上显示的说明文本。
    RootFolder获取或设置从其开始浏览的根文件夹。
    SelectedPath获取或设置用户选定的路径。
    ShowNewFolderButton获取或设置一个值,该值指示“新建文件夹”按钮是否显示在文件夹浏览对话框中。

    样式

    在这里插入图片描述

    使用

    System.Windows.Forms.FolderBrowserDialog dialog = new System.Windows.Forms.FolderBrowserDialog();
    dialog.Description = "请选择一个目录作为路径:";
    dialog.ShowNewFolderButton = true;
    dialog.RootFolder = Environment.SpecialFolder.ApplicationData;
    System.Windows.Forms.DialogResult result = dialog.ShowDialog();
    

    FileDialog

    OpenFileDialogSaveFileDialog都是继承于FileDialog

    属性及方法

    属性及方法名说明
    Reset()将所有属性重新设置为其默认值。
    Description获取或设置对话框中在树视图控件上显示的说明文本。
    AddExtension获取或设置一个值,该值指示如果用户省略扩展名,对话框是否自动在文件名中添加扩展名。
    AutoUpgradeEnabled获取或设置一个值,该值指示此 System.Windows.Forms.FileDialog 实例在 Windows Vista 上运行时是否应自动升级外观和行为。
    CheckFileExists获取或设置一个值,该值指示如果用户指定不存在的文件名,对话框是否显示警告。
    CheckPathExists获取或设置一个值,该值指示如果用户指定不存在的路径,对话框是否显示警告。
    CustomPlaces获取此 System.Windows.Forms.FileDialog 实例的自定义空间的集合。
    DefaultExt获取或设置默认文件扩展名。配合AddExtension使用
    DereferenceLinks获取或设置一个值,该值指示对话框是否返回快捷方式引用的文件的位置,或者是否返回快捷方式 (.lnk) 的位置 。
    FileName获取或设置一个包含在文件对话框中选定的文件名的字符串。
    FileNames获取对话框中所有选定文件的文件名。
    Filter获取或设置当前文件名筛选器字符串,该字符串决定对话框的“另存为文件类型”或“文件类型”框中出现的选择内容。
    FilterIndex获取或设置文件对话框中当前选定筛选器的索引。
    InitialDirectory获取或设置文件对话框显示的初始目录。
    RestoreDirectory获取或设置一个值,该值指示对话框在关闭前是否还原当前目录。
    ShowHelp获取或设置一个值,该值指示文件对话框中是否显示“帮助”按钮。
    SupportMultiDottedExtensions获取或设置对话框是否支持显示和保存具有多个文件扩展名的文件。
    Title获取或设置文件对话框标题。
    ValidateNames获取或设置一个值,该值指示对话框是否只接受有效的 Win32 文件名。

    OpenFileDialog(文件选择对话框)

    提示用户打开文件。无法继承此类。

    属性及方法

    属性及方法名说明
    CheckFileExists获取或设置一个值,该值指示如果用户指定不存在的文件名,对话框是否显示警告。
    Multiselect获取或设置一个值,该值指示对话框是否允许选择多个文件。
    ReadOnlyChecked获取或设置一个值,该值指示是否选定只读复选框。
    SafeFileName获取对话框中所选文件的文件名和扩展名。文件名不包含路径。
    SafeFileNames获取对话框中所有选定文件的文件名和扩展名的数组。文件名不包含路径。
    ShowReadOnly获取或设置一个值,该值指示对话框是否包含只读复选框。

    样式

    在这里插入图片描述

    使用

    System.Windows.Forms.OpenFileDialog dialog = new System.Windows.Forms.OpenFileDialog();
    dialog.Filter = "PDF文件|*.pdf|Word 2003文件|*.doc";
    System.Windows.Forms.DialogResult result = dialog.ShowDialog();
    if (result == System.Windows.Forms.DialogResult.OK)
    {
        string filepath = dialog.FileName;
    }
    

    SaveFileDialog(保存文件选择对话框)

    提示用户选择文件的保存位置。无法继承此类。

    属性及方法

    属性及方法名说明
    CreatePrompt获取或设置一个值,该值指示如果用户指定不存在的文件,对话框是否提示用户允许创建该文件。
    OverwritePrompt获取或设置一个值,该值指示如果用户指定的文件名已存在,Save As 对话框是否显示警告。

    样式

    在这里插入图片描述

    使用

    System.Windows.Forms.SaveFileDialog dialog = new System.Windows.Forms.SaveFileDialog();
    dialog.Filter = "PDF文件|*.pdf|Word 2003文件|*.doc";
    System.Windows.Forms.DialogResult result = dialog.ShowDialog();
    if (result == System.Windows.Forms.DialogResult.OK)
    {
        string newFilepath = dialog.FileName;
    }
    
    展开全文
  • MFC编程经常会需要用到选择目录和选择文件的界面,以下总结一下本人常用的这两种对话框的生成方法: 选择目录对话框 //选择目录按钮 void CDcPackerDlg::OnBnClickedDecgen() { char szPath[MAX_PATH]; //...
  • 当你终端环境下安装新的软件时,你可以经常看到信息对话框弹出,需要你的输入,比如:RHEL/CentOS自带的setup,对话框的类型有密码箱、检查表、菜单等等。...whiptail可以shell脚本创建基于终端的对话框,消息
  • 对话框

    千次阅读 2011-05-03 15:51:00
    对话框与控件是密不可分的,对话框内一般都有一些控件,对话框依靠这些控件与用户进行交互.一典型的对话框例子是选择了File-Open命令后弹出的文件对话框. 对话框是一种复杂的用户界面,本章的讨论将围绕...
  • c#总是提示“代码运行时或者禁用“只要一进程中断,就中断所有进程”选项时, 不允许进行更改。 但是根据它提示的修改方法,还是提示这。 “此选项“工具”->“选项”->“调试”启用。”...
  • 网上相关文章很,现简单整理如下 1、CFileDialog构造函数 1 CFileDialog:CFileDialog(BOOL  bOpenFileDialog, 2 LPCTSTR  lpszDefExt=NULL, 3 ...
  • 对话框中各项属性介绍

    千次阅读 2014-05-17 20:06:31
    虽然有些属性能够故名思义,但有些属性毕竟少用而忽略了它们的作用,所以此罗列一下,方便日后查看: Gerneral选项卡:  ID属性:用于设置资源ID,是程序对资源的标识。  Caption属性:设置对话框标题。  ...
  • Windows 对话框

    2010-03-27 15:52:00
    原文地址:http://www.dingos.cn/index.php?topic=1424.0对话框用于与... Visual Studio ,可以通过使用 Windows 窗体设计器来构造自己的自定义对话框。可以根据自己的具体需要,向自定义对话框中添加诸如 Label、
  • Android对话框Dialog深度剖析

    千次阅读 2016-12-01 22:52:11
    对话框设计Dialog 类是对话框的基类,但您应该避免直接实例化 Dialog,而是使用下列子类之一:AlertDialog此对话框可显示标题、最多三按钮、可选择项列表或自定义布局。 DatePickerDialog 或 TimePickerDialog ...
  • Windows编程时,常用到打开文件(夹)对话框选择文件或者多个文件的功能。Windows提供了好几种方式,现在做个总结,也好方便以后的使用。
  • QT QFileDialog文件对话框

    千次阅读 2019-08-01 10:05:32
    QFileDialog类提供一个对话框允许用户选择文件或目录。QFileDialog类允许用户遍历文件系统,选择或许多文件或一目录 选择文件 实例 void slots_page4_SRCImg_Btn_Clicked() { //定义文件对话框类 ...
  • qt常见对话框

    千次阅读 2018-04-23 09:33:20
    所谓标准对话框,是 Qt 内置的一系列对话框,用于简化开发。...这些对话框在所有程序几乎相同,因此没有必要每一程序中都自己实现这么一个对话框。 Qt 的内置对话框大致分为以下几类: QColorDialog:选择颜...
  • c#的模态对话框和非模态对话框

    万次阅读 2015-08-05 21:50:27
    模态窗口“关闭”后,可以读取模态窗口信息,包括窗口的返回状态,窗口子控件的值。 非模态对话框 可以弹出窗口和调用窗口之间随意切换。 调用窗口调用show方法后,下面的代码可以立即执行。 非模态...
  • Android的多种对话框样式详解

    千次阅读 2017-11-12 20:03:22
    文章来源:...我们经常会需要界面上弹出一个对话框,让用户点击对话框的某个按钮、选项,或者是输入一些文本,从而知道用户的做了什么操作,或是下达了什么指令。   An
  • C# 打开文件对话框

    千次阅读 热门讨论 2019-05-08 16:54:36
    文件对话框:英文名字 OpenFileDialog,是一个类,表示一个通用对话框,用户可以使用此对话框来指定一个或多个要打开的文件的文件名。 常用属性 FileName 获取或设置一个字符串,其中包含文件对话框中选定的文件...
  • 本文全部内容来自 @Beng Dou【[ PyQt入门教程 ] PyQt5基本控件使用:消息弹出、用户输入、文件/目录选择对话框】 文章写的很棒,很详细,所以这里转载分享 本文主要介绍PyQt界面实现常用的消息弹出对话框、...
  • C#对话框详解

    千次阅读 2012-11-29 18:44:59
     对话框中我们常用了以下几种:  1、文件对话框(FileDialog) 它又常用到两:  打开文件对话框(OpenFileDialog)  保存文件对话(SaveFileDialog)  2、字体对话框(FontDialog)  3、颜色对话框...
  • MFC属性表单和向导对话框的使用

    千次阅读 2015-09-23 22:01:54
    而属性表单则是另外一种对话框,表单上有多个属性页,每点击某一页,会显示该页的内容,最好的例子是Visual C++6.0的Option对话框;如图: 属性表单的创建: 属性表单上由许多属性页组成,每个属性页都可以...
  • 对话框类控件

    2017-07-28 14:56:30
    OpenFileDialog 控件 OpenFileDialog控件又称打开文件对话框,主要用来弹出Windows...Filter:用来获取或设置当前文件名筛选器字符串,该字符串决定对话框的【另存为文件类型】或【文件类型】框出现的选择内容。
  • 11.1 模态对话框

    2015-11-16 17:04:53
    当程序显示一模态对话框时,用户不能在对话框和该程序的其他窗口之间进行切换。用户必须先明确地终止该对话框。这通常由单击 OK 或 Cancel 按钮来实现。但是当对话框正在显示时,用户可以切换到其他的程序。有些...
  • 使用Zenity终端弹出对话框 1. 介绍 2. 用法 3. 日历对话框 4. 文件选择对话框 5. 通知区域图标 6. 列表框 7. 消息框 8. 进度框 9. 文本框 10. 文本信息框 1. 介绍 ...
  • 这个对话框可以配置为只允许选择一个文件,或可以选择多个文件。 2.使用SaveFileDialog,用户可以为要保存的文件指定一个文件名和浏览的路径。 3.PrintDialog用户选择一个打印机,并设置打印选项。 4.配置页面的...
  • VC++对话框学习总结

    千次阅读 2017-04-13 20:05:38
    你的工程添加另一工程的rc文件,这时资源视图就会出现两rc,从后加的rc拷贝资源到你自己工程的rc就可以了。   法2:vc如何拷贝一工程的对话框资源到另一工程?   这是一很专业也很有用的...
  • C#之二十 Win Form对话框

    千次阅读 2016-05-03 10:16:34
    C#程序设计及宿舍管理系统实战 ... 字体对话框FontDialog Windows窗体 FontDialog 组件是一预先配置的对话框,该对话框是标准的 Windows“字体”对话框,用于公开系统上当前安装...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 76,747
精华内容 30,698
关键字:

在对话框中允许选择多个选项