精华内容
下载资源
问答
  • 对话框的组成部分包括
    2021-07-15 04:12:27

    【小编“百花争妍”】东奥会计在线高级会计师频道提供:2017年高级职称计算机预习:对话框的组成和操作。

    对话框的组成和操作

    对话框在Windows

    XP中占有重要地位,它是用户与计算机系统之间进行信息交流的桥梁。对话框不能像窗口那样任意地改变大小,在标题栏上也没有最小化、最大化按钮,取而代之的是帮助按钮。

    2.4.1 对话框的组成和基本操作

    Windows

    XP中的对话框用于向程序提供信息。对话框通常具有多个选项和元素。例如下拉列表框、命令按钮、单选按钮、复选框和文本框等。如图所示显示了一个典型的对话框。

    1.标题栏

    2.命令按钮

    3.文本框

    4.列表框

    5.下拉式菜单

    6.单选按钮

    7.复选框

    8.数字增减框

    9.滑动杆

    10.选项卡

    包含信息较多的对话框可以由多个选项卡组成,每个选项卡对应一个主题信息,且含有不同的选项组。以下操作可以实现不同选项卡之间的切换:

    ◆直接单击选项卡标题,以切换选项卡;

    ◆单击选项卡标题,当标题名周围出现虚框线时,使用键盘上得左、右方向键可以在各个选项卡之间进行切换;

    ◆利用Ctrl+Tab组合键可以从左到右依次切换各个选项卡,而利用Ctrl+Shift+Tab组合键则可以反向顺序依次切换。

    2.4.2 确认、提醒或警告对话框

    确认、提醒或警告对话框在系统需要确认、提醒或警告时才会出现。确认对话框提示用户确认是否执行某一操作,提醒对话框用来传递系统提示信息,警告对话框提示用户执行相应操作可能带来的后果。

    (本文内容版权归东奥会计在线所有 转载请注明出处)

    相关链接:

    更多相关内容
  • 对话框

    2020-10-12 11:34:26
    当完成交换后,单击对话框的按钮将关闭该对话框对话框只是应用程序生命周期的一部分。 #对话框的创建 import wx #定义窗口类MyFrame,包含aboutMenu子菜单并单击创建MyDialog对话框 class MyFrame(wx.Frame): ...

    对话框分为模态对话框、提示对话框、文本对话框、打开文件对话框等多种类型。在wxpthon中对话框都继承自wx.Dialog类。下面展示一下这些对话框。
    一、对话框的创建和使用与Frame相似,不同的对话框表示一次信息交换的活动。当完成交换后,单击对话框的按钮将关闭该对话框,对话框只是应用程序生命周期的一部分。

    #对话框的创建
    import wx
    
    #定义窗口类MyFrame,包含aboutMenu子菜单并单击创建MyDialog对话框
    class MyFrame(wx.Frame):
        def __init__(self):
            wx.Frame.__init__(self,None,-1,u'自定义对话框',size=(300,200))
            MenuHelp = wx.Menu()
            aboutMenu = MenuHelp.Append(-1,u'关于(&A)')
            menuBar = wx.MenuBar()
            menuBar.Append(MenuHelp,u'帮助(&H)')
            self.Bind(wx.EVT_TOOL,self.ShowAboutDlg,aboutMenu)
            self.SetMenuBar(menuBar)
    
    #定义showaboutdlg(),用该函数创建显示aboutmenu菜单
        def ShowAboutDlg(self,evt):
            pos = self.GetPosition()
    
    #创建对话框dialog,并显示MyFrame的相对位置
            dialog = MyDialog(self,-1,u'关于')
            dialog.SetPosition((pos[0] + 100,pos[1] + 60))
    
    #创建了MyDialog对话框类,继承自wx.Dialog,创建 确定 按钮打开对话框
    class MyDialog(wx.Dialog):
        def __init__(self,parent,id,title):
            wx.Dialog.__init__(self,parent,id,title,size=(100,100))
            self.panel = wx.Panel(self)
            self.OkBtn = wx.Button(self,10,u'确定',pos=(10,20),size=(80,30))
            self.Bind(wx.EVT_BUTTON,self.CloseDlg,self.OkBtn)
            self.Show() #调用show()显示对话框
    
        def CloseDlg(self,evt):
            self.Close()
    
    if __name__=='__main__':
        app = wx.PySimpleApp()
        MyFrame().Show()
        app.MainLoop()
    
    #由于模态对话框的约束性,因此模态对话框通常作为获取数据的窗口。
    #只有从模态对话框中返回数据后,才能关闭对话框
    

    二、提示对话框有助于用户体验的完善,例如,退出应用程序时显示退出提示,删除数据时显示删除提示。

    #提示对话框:通常用于帮助用户进行交互式操作
    import wx
    class MyFrame(wx.Frame):
        def __init__(self):
            wx.Frame.__init__(self,None,-1,u'对话框',size=(300,200))
            button = wx.Button(self,wx.ID_OK,u'退出',pos=(10,10))
            button.SetDefault()
            self.Bind(wx.EVT_BUTTON,self.OnClick,button)
        #创建对话框,根据wx.YES_NO,生成“是”、“否”按钮
        def OnClick(self,evt):
            #使用MessageDialog()类创建选择对话框
            dlg = wx.MessageDialog(None,u'是否退出?',u'退出',wx.YES_NO|wx.ICON_QUESTION)
            #判断用户选择的返回值
            if(dlg.ShowModal() == wx.ID_YES):
                frame.Close()   #关闭主程序
            #调用释放对话框对象
            dlg.Destroy()
    
    if __name__=='__main__':
        app = wx.PySimpleApp()
        frame = MyFrame()
        frame.Show()
        app.MainLoop()
    

    三、文本输入对话框:用于返回输入字符串的值,通常由一个静态文本框、一个输入文本框和OK、Cancel按钮组成,可由wx.TextEnTryDialog类创建。

    import wx
    class MyFrame(wx.Frame):
        def __init__(self):
            wx.Frame.__init__(self,None,-1,"TextEntryDialog",size=(300,200))
            panel = wx.Panel(self,-1)
    
            #创建TextCtrl实例textCtrl,并用wx.TE_PROCESS_ENTER处理回车事件
            self.textCtrl = wx.TextCtrl(panel,-1," ",pos=(10,10),style=wx.TE_PROCESS_ENTER)
            self.textCtrl.Bind(wx.EVT_TEXT_ENTER,self.OnClick,self.textCtrl)
    
        def OnClick(self,evt):
            #创建文本对话框,包含“ok”和“cancel”按钮
            self.dialog = wx.TextEntryDialog(None,u'输入文本',u'文本对话框',"",style=wx.OK|wx.CANCEL)
            #当按下OK按钮时
            if self.dialog.ShowModal() == wx.ID_OK:
                #获取文本输入内容,调用SetLabel把文本填入textCtrl控件的文本框
                self.textCtrl.SetLabel(self.dialog.GetValue())
    if __name__=='__main__':
        app = wx.PySimpleApp()
        MyFrame().Show()
        app.MainLoop()
    #创建1个TextCtrl控件,当按下回车键后,将显示TextEntryDialog对话框
    #用户输入文本后,单击“OK”按钮将把输入的值返回给TextCtrl控件
    

    四、特殊对话框:包括打开文本对话框、字体对话框、颜色选择对话框。打开文件对话框由wx.FileDialog类创建。

    #演示“打开”文件对话框的创建和使用方法
    import wx
    import os
    
    #创建打开文件对话框,显示当前目录中的文件,并可对类型进行过滤
    def ShowFileDialog():
    #文件类型的下拉列表提供“py”为后缀的文件和所有文件两种类型
        filterFile = "Python source(*.py)|*.py|All files(*.*)|*.*"  #过滤文件
        #对话框dialog。os.getcwd()获取当前文件所在的路径
        dialog = wx.FileDialog(None,u'选择文件',os.getcwd(),"",filterFile,wx.ART_FILE_OPEN)
        #以模式对话框的形式显示dialog对象
        dialog.ShowModal()
        dialog.Destroy()
    
    if __name__=='__main__':
        app = wx.PySimpleApp()
        ShowFileDialog()
        app.MainLoop()
    

    五、窗口与对话框的交互,对话框中的组件支持验证能力,而窗口不支持组件内容的验证。wx.PyValidator类的TransferWindow()和TransfromWindow()这两个方法实现窗口和对话框的交互。前者方法用于对话框打开时执行,后者方法用于对话框关闭的调用,可以实现窗口与对话框的数据交换。

    #创建Frame窗口,该窗口用于计算两个数字的和
    import wx
    class MyFrame(wx.Frame):
        def __init__(self):
            wx.Frame.__init__(self,None,-1,u"对话框的验证",size=(300,200))
            panel = wx.Panel(self,-1)
            sizer = wx.BoxSizer(wx.HORIZONTAL)
            self.addTextCtrl = wx.TextCtrl(panel,-1,"",pos=(10,10))
            addStaticText = wx.StaticText(panel,-1,"+")
            self.addTextCtrl2 = wx.TextCtrl(panel,-1,"")
            btn = wx.Button(panel,-1,u'计算')
            btn.Bind(wx.EVT_BUTTON,self.OnClick,btn)
            sizer.Add(self.addTextCtrl)
            sizer.Add(addStaticText)
            sizer.Add(self.addTextCtrl2)
            sizer.Add(btn)
            panel.SetSizer(sizer)
            panel.Fit()
        def OnClick(self,event):
        #定义字典data,把两个文本框中的数字存放到字典中
            data = {0:self.addTextCtrl.GetValue(),1:self.addTextCtrl2.GetValue()}
            dlg = MyDialog(data)
            dlg.ShowModal()
            dlg.Destroy()
    

    演示设计执行计算的对话框类,该对话框接收窗口定义的字典数据,然后进行计算。

    #演示设计执行计算的对话框类
    class MyDialog(wx.Dialog):
        def __init__(self,data):
            wx.Dialog.__init__(self,None,-1,u'验证器')
            addStaticText = wx.StaticText(self,-1,u'数字1:')
            addStaticText2 = wx.StaticText(self,-1,u'数字2:')
            self.addTextCtrl = wx.TextCtrl(self,validator = DataValidator(data,0))
            self.addTextCtrl2 = wx.TextCtrl(self,validator = DataValidator(data,1))
            btn = wx.Button(self,wx.ID_OK,u'确定')
            btn.Bind(wx.EVT_BUTTON,self.OnClick,btn)
            btn.SetDefault()
            sizer = wx.BoxSizer(wx.VERTICAL)
            gridSizer = wx.FlexGridSizer(2,2,5,5)
            gridSizer.Add(addStaticText,0,wx.ALIGN_LEFT)
            gridSizer.Add(self.addTextCtrl,0,wx.EXPAND)
            gridSizer.Add(addStaticText2,0,wx.ALIGN_LEFT)
            gridSizer.Add(self.addTextCtrl2,0,wx.EXPAND)
            sizer.Add(gridSizer,0,wx.EXPAND|wx.ALL,5)
            sizer.Add(btn,0,5)
            self.SetSize(sizer)
            sizer.Fit(self)
        def OnClick(self,evt):
            result = float(self.addTextCtrl.GetValue()) + float(self.addTextCtrl2.GetValue())
            wx.MessageBox(str(result),u'结果')
            self.Close()
    

    用DataValidator类实现创建数据的接收。

    class DataValidator(wx.PyValidator):
    #定义构造函数,用于接收data字典和相应的索引
        def __init__(self,data,key):
            wx.PyValidator.__init__(self)
            self.data = data
            self.key = key
         #覆盖close()方法,返回验证器的拷贝
        def Clone(self):    #close()方法必须实现
            return DataValidator(self.data,self.key)
        def Validata(self,w):   #验证数据
            return True
        def TransferToWindow(self): #对话框打开时调用
            textCtrl = self.GetWindow()	#获得当前组件
            #通过索引key查找当前组件的值,即把窗口文本框的内容传递给对话框的文本框
            textCtrl.SetValue(self.data.get(self.key,""))
            return True
        def TransferFromWindow(self): #对话框关闭时调用
            return True
    

    在DataValidator类的validata()方法实现对组件数据的验证,有兴趣者可以自己编写一些相关的验证规则来丰富对话框的验证功能。

    (好久没来写笔记了,希望大家勤快点哦)

    展开全文
  • MFC基于对话框编程

    2021-07-13 14:32:26
    在Visual C++中,对话框既可以单独组成一个简单的应用程序,又可以成为文档/视图结构程序的资源。 创建基于对话框的 MFC 应用程序框架 程序的创建过程: 选择“文件 | 新建 | 项目”菜单; 在“新建项目”...

    MFC基于对话框编程

    目录

    基于对话框编程

    创建基于对话框的 MFC 应用程序框架

    资源视图

    类视图

    模态对话框

    非模态对话框

    • 对话框是一种特殊类型的窗口,绝大多数Windows程序都通过对话框与用户进行交互。
    • 在Visual C++中,对话框既可以单独组成一个简单的应用程序,又可以成为文档/视图结构程序的资源。

    创建基于对话框的 MFC 应用程序框架

    • 程序的创建过程: 
      • 选择“文件 | 新建 | 项目”菜单; 
      • 在“新建项目”对话框中,选择“ MFC 应用程序 ”,输入工程名称,选择“确定”。

    • 选择“ 基于对话框”,即创建基于对话框的应用程序,选择“完成”。

    资源视图

    •  用 AppWizard 创建基于对话框的应用程序框架(假定工程名为 Dialog )后,项目工作区上增加了一个“资源视图”选项卡

    •  或者,通过视图找到“资源视图”选项卡:

    •  在 MFC中,与用户进行交互的对话框界面被认为是一种资源。展开“Dialog”,可以看到有一个ID为IDD_ DIALOG _DIALOG(中间部分(DIALOG)与项目名称相同)的资源,对应中间的对话框设计界面。不管在何时,只要双击对话框资源的ID,对话框设计界面就会显示在中间。

    类视图

    • 在类视图中可以看到生成了3 个类:CAboutDlgCDialogAppCDialogDlg 

    • CAboutDlg:对应生成的版本信息对话框。
    • CDialogApp:应用程序类,从 CWinApp 继承过来,封装了初始化、运行、终止该程序的代码。
    • CDialogDlg:对话框类,从CdialogEx继承过来的,在程序运行时看到的对话框就是它的一个具体对象。
      • DoDataExchange函数:该函数主要完成对话框数据的交换和校验
      • OnInitDialog函数:相当于对对话框进行初始化处理

    模态对话框

    • 当模态对话框显示时,程序会暂停执行,直到关闭这个模态对话框之后,才能执行程序中的其他任务。
      • 通过工具箱在界面上放一个Button,双击此按钮即可跳转到按钮处理函数:
        • 处理函数:
    //按钮处理函数
    void CDialogDlg::OnBnClickedButton1()
    {
    	// TODO:  在此添加控件通知处理程序代码
    }
    • 资源视图 -> Dialog -> 右击 -> 插入 Dialog

    • 修改对话框ID:

    • 点击对话框模板 -> 右击 -> 添加类:

    • 类视图中多了一个自定义类:

    • 按钮处理函数创建对话框,以模态方式运行。
      • 实现模态对话框的创建需要调用CDialog类的成员函数CDialog::DoModel,该函数的功能就是创建并显示一个对话框:
    //启动模态对话框按钮
    void CDialogDlg::OnBnClickedButton1()
    {
    	//需要包含头文件:#include "DlgExec.h"
    	CDlgExec dlg;
    	dlg.DoModal(); //以模态方式运行
    }

    非模态对话框

    • 当非模态对话框显示时,运行转而执行程序中的其他任务,而不用关闭这个对话框。
      • 图形界面操作过程和模态对话框一样,只是,非模态对话框实现方式不一样,先创建(CDialog::Create)一次,然后再显示(CWnd::ShowWindow)。
    • 主对话框.h类中声明对话框对象

    • 创建对话框放在主对话框类的构造函数或OnCreate()函数,目的只创建一次对话框:
    //主对话框构造函数
    CDialogDlg::CDialogDlg(CWnd* pParent /*=NULL*/)
    	: CDialogEx(CDialogDlg::IDD, pParent)
    {
    	m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
    
    	m_dlg.Create(IDD_DIALOG_SHOW); //IDD_DIALOG_SHOW为对话框ID
    }
    • 按钮处理函数显示对话框:
    //启动非模态对话框按钮
    void CDialogDlg::OnBnClickedButton2()
    {
    	// TODO:  在此添加控件通知处理程序代码
    
    	m_dlg.ShowWindow(SW_SHOWNORMAL); //显示非模态对话框
    }

    展开全文
  • VC++程序设计与应用--对话框

    千次阅读 2021-12-31 23:23:59
    对话框的应用

    目录

    前言

    一、对话框

    1.1 对话框概述

    1.1.1  对话框的类型

    1.1.2  对话框的CDialog类

    1.1.3  对话框的组成 

    1.2 模态对话框

    1.2.1 设计对话框模板资源

    1.2.2 设计对话框类

    1.2.3 运行对话框

    1.2.4 对话框数据交换和校验机制

    1.3 非模态对话框

    1.3.1 非模态对话框的特点

    1.4 属性页对话框 

    1.5 通用对话框 

    1.5.1 CFileDialog类

    1.5.2  CColorDialog类 

    1.5.3 CFontDialog类  

    1.5.4 CPrintDialog类和CPageSetupDialog类 

    1.5.5 CFindReplaceDialog类

     总结


    前言

    本篇文章介绍对话框


    一、对话框

    1.1 对话框概述

    1.1.1  对话框的类型

    主要有以下两种:

    1. 模式(Model)对话框
    2. 无模式(Modeless)对话框

    1.1.2  对话框的CDialog

    CDialog类从CWnd类派生而来,所以它继承了CWnd类的成员函数,具有CWnd类的基本功能,可以编写代码移动、显示或隐藏对话框,并能根据对话框的特点增加新的成员函数,扩展它的功能。

     

     

    1.1.3  对话框的组成 

    对话框主要由以下两部分组成:

    (1) 对话框模板:对话框模板定义了对话框的特性(比如大小、位置和风格)以及对话框中每个控件的类型和位置。

    (2) 对话框类:从CDialog类派生的对话框类提供编程接口来管理对话框。

    1.2 模态对话框

    对于模式对话框的编程可以按以下步骤进行。

    (1) 根据要求创建对话框模板。

    (2) 使用ClassWizard创建对话框类并进行各类事件函数的代码编写。

    (3) 对视图类进行编辑,以便对话框能够被激活。      

    1.2.1 设计对话框模板资源

         打开对话框编辑器:

    • 使用菜单【Insert|Resource】打开Insert Resource对话框,选中Dialog后单击New按钮。
    • 使用项目的ResourceView,找到Dialog资源,右击后选择Insert Dialog

    对话框编辑器如下图所示。

     

    设计对话框模板资源有两个重要的内容:

    1. Controls工具栏中选择控件(Control,功能各异的小小零组件)加到对话框中,并调整其位置和大小
    2. 设置控件的CaptionID以及其他属性  

    1.增加或删除控件

    2.设置控件属性

    属性设置在与每个控件相对应的属性对话框中进行。

    打开控件属性对话框:

    • 在控件上右击鼠标,在弹出的快捷菜单中选择Properties
    • 选择控件,选择View|Properties菜单项

     

    对话框的属性也是在对话框的属性对话框中设置。

            在对话框任意空白处右击,在弹出的快捷菜单中选择Properties

     

    3.测试对话框的运行效果

          测试对话框的方法有下面3种:

    1. 选择菜单项Layout |Test
    2. 单击布局工具栏上的Test按钮。
    3.   按快捷键Ctrl+T 

    1.2.2 设计对话框类

    主要包括下面几个方面:

    • MFCCDialog中派生出一个类,用来负责对话框行为。
    • 利用ClassWizard把这个类和已编辑完成的对话框资源连接起来。

        这意味着必须声明某些函数,用以处理相应的对话框消息,并将对话框中的控件对应到类的成员变量上,这也就是所谓的对话框数据交换(DDXDialog Data eXchange)。如果对这些变量内容有确认规则的话,ClassWizard也允许设定,这就是所谓的对话框数据验证(DDVDialog Data Validation)

    • 对话框的初始化。

    1.2.3 运行对话框

    模态对话框的运行分两个步骤:

    1. 创建一个对话框对象
    2. 调用CDialog::DoModal()函数打开对话框

            DoModal()函数负责模态对话框的创建和撤消,可以根据其回值是IDOK还是IDCANCEL来判断用户关闭对话框时按的哪一个键。

    1.2.4 对话框数据交换和校验机制

            CDialog类通过调用其成员函数DoDataExchange()实现对话框数据交换和验证,在DoDataExchange()中使用了MFC提供的CDataExchange类,该类实现对话框类的成员变量与控件之间的数据交换DDX和数据验证DDV

            DDX将成员变量与对话框控件相连接,完成数据在成员变量和控件之间的交换。DDV用于数据的校验,它能自动校验输入的数据(如字符串的长度或数值的范围)是否符合设计要求。

    DoDataExchange()函数由框架调用。在应用程序MyDialog中,可以找到下列函数:

    控件与成员变量之间的数据交换通过调用UpdateData()函数进行。

    • UpdateData()函数只有一个BOOL类型的参数
    • 当参数为TRUE时,MFC通过调用DoDataExchange()函数将数据从控件传递到关联的成员变量
    • 当参数为FALSE时,数据从成员变量传递到关联的控件。

    如下图所示。 

    1.3 非模态对话框

    1.3.1 非模态对话框的特点

    与模态对话框比较:

    相同:创建对话框资源、添加对话框类、添加成员变量和消息处理函数的方法

    不同:创建和退出对话框的方式

    1.Visible属性

        模态对话框不需要设置该属性,而非模态对话框必须具有Visible风格,否则对话框是不显示的。

        另一种方法是调用CWnd::ShowWindow(SW_ SHOW)来显示对话框。

    2.对话框窗口的创建方式

        非模态对话框的创建是通过调用CWnd::Create()函数来实现的。

         Create()函数与DoModal()函数不同之处是:Create()创建对话框后立即返回,而DoModal()函数在对话框关闭后才会返回。

    3.对话框对象的创建方式

         由于在Create()返回后,不能确定对话框是否已关闭,这样也就无法确定对话框对象的生存期,所以不能以局部变量的形式创建非模态对话框的对象,只能用new操作符动态创建,并且在调用对话框类的窗口类内声明一个指向对话框类的指针变量,通过该指针访问对话框对象。

    4.窗口删除函数

        非模态对话框必须调用CWnd::DestoryWindow()来关闭对话框。

        模态对话框是调用CDialog::EndDialog()关闭对话框。由于默认的对话框函数OnOK()OnCancel()都是调用EndDialog()关闭对话框的,该函数使对话框不可见但不删除对话框对象。所以非模态对话框类要定义自己的OnOK()OnCancel()函数,调用DestoryWindow()来关闭对话框。

    5.清理对话框对象的方式

        与创建对象的方式new操作相对应,使用delete操作删除一个非模态对话框对象。

        当屏幕上一个窗口被关闭后,框架会自动调用CWnd::PostNcDestroy()函数,也可以编写程序代码,在这个函数中清理非模态对话框对象。 

    6. 必须有一个标志表明非模态对话框是否是打开的

        因为在非模态对话框打开的情况下,用户有可能再次选择打开该对话框,这时不能再创建一个新的非模态对话框。

        程序根据标志来判断是打开一个新的对话框还是激活一个已打开的对话框。通常可以用拥有者窗口中的指向对话框对象的指针作为这种标志,当对话框关闭时,给该指针赋NULL值,以表明对话框对象已不存在了。

    1.4 属性页对话框 

    属性页对话框实际上是一个包含了多个子对话框的对话框,这些子对话框通常被称为页(Page)。每次只有一个页是可见的,在对话框的顶端有一行标签,用户通过单击这些标签可以切换到不同的页。

            为了支持属性页对话框,MFC提供了CPropertySheet类和CPropertyPage类。分别代表属性页对话框和对话框中的某一页。

    1.5 通用对话框 

    1.5.1 CFileDialog

    CFileDialog类提供的通用文件对话框,实现Windows标准的打开另存为功能。

    使用CFileDialog可按以下步骤进行。

    (1) 构造 CFileDialog 类的对象。该类的构造函数为:
    CFileDialog(
    
    BOOL bOpenFileDialog,值为TRUE,构造【打开】对话框;值为
    
                              FALSE,构造“另存为”对话框
    
    LPCTSTR lpszDefExt=NULL,默认的文件扩展名
    
    LPCTSTR lpszFileName=NULL,出现在文件名编辑框中的初始文件名
    
    DWORD dwFlags=OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,
    
     LPCTSTR lpszFilter=NULL,CWnd *pParentWnd=NULL文件过滤器,  用于确定显示在文件列表中的文件类型
    
    )

     

    例如,以下字符串就是一个描述只在文件列表框中显示文本文件(*.txt)Microsoft文件(*.doc)的过滤器。 

    CFileDialog dlg(TRUE,"bmp","*.bmp", OFN_HIDEREADONLY

    |OFN_ALLOWMULTISELECT,"文本文件(*.txt)|*.txt|Word文件(*.doc)|*.doc||");

    1个参数TRUE打开对话框;

    2个参数“bmp:如果在文件名对话框中输入文件名时未指定扩展名,则会自动附加“.bmp

    3个参数“*.bmp:文件名对话框中的初始文件名是*.bmp

    4个参数代表dwFlags不显示隐藏文件,且可以在列表框中进行多选;第5个参数是过滤器:在文件类型下拉列表框中显示了文本文件(*.txt)Word文件(*.doc)。     

    (2) 调用成员函数DoModal( )将对话框显示在屏幕上,并让用户从中选择文件。

    (3) 如果DoModal( )返回的是IDOK,那么调用下表中的成员函数获取文件信息。 

     

    1.5.2  CColorDialog 

    CColorDialog类提供了可以选择颜色的对话框,使得用户可以从颜色列表中选择要用的颜色。

    对该类的使用可按下列步骤进行:

    (1) 在视图类相应位置构造CColorDialog对象。

    (2) 设置或修改成员变量m_cc来初始化对话框。m_cc的结构类型为COLORREF

    (3) 调用成员函数DoModal()来显示对话框并让用户从中选择颜色。

    (4) 如果DoModal()返回的是IDOK,那么用户所做的颜色选择将保存在m_cc中。通过使用该类的成员函数GetColor()即可得到选择颜色的RGB值。

    1.5.3 CFontDialog  

    CFontDialog类封装了标准的字体对话框,使得用户可以从系统安装的字体列表中选择要用的字体。

        CFontDialog类的使用步骤与CColorDialog的使用过程是一样的,只是m_cc的结构类型为LOGFONT

            在选择了字体后,可通过下表中的成员函数获取所选择的字体信息。

    1.5.4 CPrintDialog类和CPageSetupDialog 

    CPrintDialog类支持打印和打印设置对话框,通过这两个对话框用户可以进行与打印有关的设置。

    1.5.5 CFindReplaceDialog类

    CFindReplaceDialog类用于实现查找和替换对话框。这两个对话框都是非模态对话框,用于在正文中查找和替换指定的字符串。


     总结

    生活,就是要好好过。切不要被失败折磨,纵然失魂落魄,纵然四面楚歌,纵然心爱的人,她也不爱我!我们也要好好爱自己!好好生活!

    展开全文
  • QT:对话框Dialog

    2021-08-05 18:15:28
    对话框是 GUI 程序中不可或缺的组成部分。很多不能或者不适合放入主窗口的 功能组件都必须放在对话框中设置。对话框通常会是一个顶层窗口,出现在程序最上层,用于实现短期任务或者简洁的用户交互。 Qt 中使用...
  • 1⃣️ 浏览器概念简述: 浏览器(browser application)是用来访问和...2⃣️ 浏览器的组成部分: 1. 用户界面: 用户界面主要包括:地址栏,后退/前进按钮,书签目录等;(除了从服务器请求到的网页窗口) ...
  • PyQt主窗口、对话框

    千次阅读 2022-01-21 16:50:52
    QInputDialog控件是QDialog标准对话框的一部分。   在QInputDialog控件中可以输入数字、字符串或列表中的选项。标签用于提示必要的信息。 getInt():从控件获取标准整数输入。 getDouble():从控件获取标准浮点数...
  • 我有一个由两部分组成的问题.我需要添加支持打印到现有的基于对话框的MFC项目.正在打印的文档是使用HTML组成的.我知道我可以添加基于HTML的对话框,但是如何添加打印功能呢?PS.我需要这个能够根据程序的需要设置打印...
  • 对话框 一种次要窗口,包含按钮和各种选项,通过...对话框组成对话框主要由两部分组成对话框资源:可以使用对话框编辑器来配置对话框的界面,如对话框的大小、位置、样式,对话框中控件的类型和位置等。另外...
  • MFC学习笔记(1)--对话框

    千次阅读 2017-11-14 09:58:01
    是否带有标题栏左上角的系统菜单,包括移动、关闭等菜单项。 Title Bar: 是否带有标题栏。 Font(Size): 字体类型和字体大小。如果将其修改为非系统字体,则Use System自动改为False。而如果Use System原来...
  • 想要获取一个可执行文件(PE文件)里包含的资源文件,首先要解析可执行文件,得到资源存储的地址及大小,可参考 https://blog.csdn.net/zhyulo/article/details/85717711。然后,根据资源存储方式,得到各资源的数据...
  • MFC 对话框常用控件详解

    千次阅读 2019-08-19 10:24:28
    按钮控件包括命令按钮(Button)、单选按钮(Radio Button)和复选框(Check Box)等。 按钮控件会向父窗口发送通知消息,最常用的通知消息莫过于BN_CLICKED和BN_DOUBLECLICKED了。用户在按钮上单击鼠标时会向...
  • Blazor Modal对话框编辑器

    千次阅读 2021-05-17 22:49:43
    模态对话框 运行版本2 版本3 ModalResult和ModalResultType ModalOptions IModal对话 模态对话框 天气组件 天气编辑器 FetchDataModal 总结 介绍 为了设置本文的上下文,自Blazor首次发布以来,已经有...
  • Android 对话框相关总结

    千次阅读 2017-08-22 21:56:52
    1.纯粹的 AlertDialog以及设置位置2. ProgressDialog和自定义对话框3. 自定义对话框(考虑wrap_content时的大小问题)4.单选列表对话框5.多选列表对话框6.全屏的对话框
  • 1、对话框组成  从MFC角度看,分为两类:  (1)对话框模板资源。对话框模板用于指定对话框的控件及其分布,Windows根据对话框模板来创建并显示对话框  (2)对话框类。用于实现对话框的功能,一般从CDialog类...
  • QMainWindow 是一个为用户提供主窗口程序的类,包含一个菜单栏(menu bar)、多个工具栏(tool bars)、多个锚接部件(dock widgets)、一个状态栏(status bar)及一个中心部件(central widget),是许多应用程序的基础,如...
  • 这篇文章介绍了对话框的框架结构和组件 1.总览 2.对话框框架结构树 3.对话框框架类定义 容器:窗口,盒子,Bars,菜单 组件:indicators,control 触发行为,controls设置选项,controls进入选择文本或者值 菜单项目 ...
  • VB讲课笔记10:菜单与对话框

    千次阅读 2018-03-14 06:46:11
    VB讲课笔记10:菜单与对话框一、用户界面设计基础用户界面是应用程序最基本的组成部分,其内容包括界面基本元素的外观设计和实现相应功能的代码编制。 1、用户界面元素(User Interface Element) 窗体是用户界面...
  • MFC对话框整合

    千次阅读 2016-11-24 19:20:34
    创建对话框主要分两大步,第一,创建对话框资源,主要包括创建新的对话框模板、设置对话框属性和为对话框添加各种控件;第二,生成对话框类,主要包括新建对话框类、添加控件变量和控件的消息处理函数等。 创建...
  • 概述对话框框架类树对话框框架类定义 容器 窗口框栏菜单组件 指标控件以触发操作控件设置选项输入或选择文本或值的控件菜单项引用概述您将在下面找到:对话框框架类树所有对话框框架类的定义,尽可能说明。...
  • Qt 5——对话框QDialog

    千次阅读 2020-06-19 16:28:26
    对话框是 GUI 程序中不可或缺的组成部分。很多不能或者不适合放入主窗口的功能组件都必须放在对话框中设置。对话框通常会是一个顶层窗口,出现在程序最上层,用于实现短期任务或者简洁的用户交互。 Qt 中使用QDialog...
  • Android 开发过程中经常需要用户自定义的对话框。这种对话框需要支持在对话框里面输入的内容在对话框关闭后传递给当前所在的Activity。...用户自定义对话框的例子包含已下几个部分:    1)Act
  • QMainWindow 是一个为用户提供主窗口程序的类,包含一个菜单栏(menu bar)、多个工具栏(tool bars)、多个锚接部件(dock widgets)、一个状态栏(status bar)及一个中心部件(central widget),是许多应用程序的基础,...
  • 创建基于对话框的应用程序框架 对话框是Windows系统的一种特殊的窗口,用于应用程序和用户之间进行信息交互,其作用非常重要。 控件是嵌入在对话框或其它父窗口中的一种特殊子窗口。 Visual Studio提供了大量控件...
  • AlertDialog(对话框)

    2016-05-23 08:11:33
    首先看各种样式的对话框: 我们看到,Dialog有很多的子类实现,所以我们要定义一个对话框,使用其子类来实例化一个即可,而不要直接使用Dialog这个父类来构造。 二、AlertDialog 今天我们重点要来了解的就是...
  • 第五课——对话框

    2017-11-30 21:24:00
    一、何为对话框 是Windows应用程序中最重要的用户界面元素之一,是与用户交互的重要手段。 是一个特殊类型的窗口,可作为各种控件(具有独特功能的界面元素)的容器,可用于捕捉和处理用户的多个输入信息或数据...
  • HTML基础(一):HTML的组成结构

    千次阅读 2021-06-11 12:34:05
    HTML是网页主要的组成部分,基本上一个网页都是由HTML语言组成的,所以要学习网站怎样建设,必须从网页的基本语言学起。HTML文件是什么?HTML表示超文本标记语言(Hyper Text Markup Language)。HTML文件是一个包含...
  • 按照控件的特点可以将控件分为以下几类 一.可以定义动作行为的控件 这类控件具有动作行为(action)的属性,动作行为是用AutoLISP的...每个对话框至少包含一个OK按钮(或功能相当的控件)。 按钮的类型是button。有a...
  • javascript对话框

    2017-11-22 20:14:00
    使用对话框对用户的体验进行引导是任何用户界面的一个重要组成部分(对对话框的过度使用会使人分心,所以请明智地使用对话框)。这里提供的支持使您可以不受所使用的技术的限制构建希望的用户界面。我还希望我已经...
  • 第12章 对话框

    2018-08-22 20:22:38
    对话框的一般形式是包含多种子窗口控件的弹出式窗口,这些控件的大小和位置在程序资源描述文件的「对话框模板」中指定。虽然程序写作者能够「手工」定义对话框模板,但是现在通常是在Visual C++ Developer Studio中...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 55,109
精华内容 22,043
热门标签
关键字:

对话框的组成部分包括