• 动态对话框类


    动态对话框类 这些类被用来显示一个模态对话框/上一次,上 动态添加控件,不需要有一个对话框 模板资源。这些类作为基类使用 在脚本解析器,用户可以建立自己的对话框,使用 vb脚本语言。所以基本上可以有任意数量的控制 对话框,在对话框上的任何地方。 全球CDynDialogEx类的结构: CDialog类派生 班上有一个CDynDialogItemEx数组 指针,控件的对话框 类包括DoDataExchange()函数。 将控件添加到对话框中通过AddDlgControl()函数 全球CDynDialogItemEx类的结构: CWnd类派生 保存的数据添加到对话框控制,像 标题、矩形等。 创建对话框上的控件 小块示例代码如何使用classesHide,收缩,复制Code

    void CTestDynDialogDlg::OnButton1();
    {
        int nRadio1 = 0;
        //Create a rectangle in dialog units, where the control should be placed
        CRect rect(10,5,60,19);
        
        CDynDialogEx dlg(this);     //create the dynamic dialog, using this as parent window
        dlg.SetWindowTitle(_T("Dynamic Dialog : WindowTitle....."));
    
        //Add a button control at the given position
        dlg.AddDlgControl(_T("BUTTON"),    // Type of control OR classname of the control
                _T("Press me!"),    // Caption of control
                STYLE_BUTTON,    // dwStyle of control
                EXSTYLE_BUTTON,    // dwStyleEx of control
                &rect,    // Position of control on dialog in dialog units, default = NULL
                NULL,    // void pointer to variable use for DDX, default = NULL
                IDC_DYN_BUTTON);    // ID of the contol, default = zero
    
        //Add a group of radio buttons
        //variable nRadio1 is used for DDX
        dlg.AddDlgControl(_T("BUTTON"), _T("Radio1Caption 1"), 
                          STYLE_RADIO_GROUP, EXSTYLE_RADIO, NULL, (void*)&nRadio1);
        dlg.AddDlgControl(_T("BUTTON"), _T("Radio1Caption 2"), 
                          STYLE_RADIO, EXSTYLE_RADIO);
    
        //Now show me the dialog
        dlg.DoModal()
    }

    解释工作 CDynDialogEx: AddDlgControl()函数创建新的 CDynDialogItemEx类的对象,并将其添加到数组中 的控制。函数还检查/设置对话框的大小,所以 控制是在对话框。 CDynDialogEx: DoModal()函数初始化 DLGTEMPLATE结构使用选定的字体和调用 CDialog: InitModalIndirect()模态对话框或 CDialog: CreateIndirect比较对话框() CDynDialogEx: OnCreate()函数创建的所有 控制对话框 CDynDialogItemEx: CreateEx()没有(ActiveX控件) 或创建窗口 CDynDialogEx: OnInitDialog复位()函数 所有对话框上的控件或创建ActiveX控件 CDynDialogItemEx: SetWindowPos()函数转换 对话框屏幕单位单位并创建ActiveX控件 更新18-06-2002 来自CWnd类CDynDialogItemEx现在而不是拔CWnd成员 添加比较gialog CodeBuddy所认为的可能性。(CDynDialogEx:: SetUseModeless ()) 添加控件子类化,因为我需要他们。后添加控制可以使用 与调用返回的Control_ID SubclassDlgItem CDynDialogEx: AddSubclassedDlgControl () 改进的DDX_Control支持对话框条目 添加部分ActiveX控件的支持。部分,因为创建控件,但 不支持EVENT_SINK !但有代码用于创建授权控制构建。 添加示例非模态的对话框中,添加和填充CListbox, 一个ActiveX控件在对话框 提示! 将这段代码与保罗·梅西纳的文章CResizableDialog的代码 可能的扩展: 改善ActiveX控件支持,特别是EVENT_SINK相关 动态菜单添加到对话框 … 本文转载于:http://www.diyabc.com/frontweb/news6929.html

  • 相关阅读:
    Dubbo学习系列之六(微服务架构实战)
    流式计算(二)-Kafka Stream
    流式计算(一)-Java8Stream
    Dubbo学习系列之七(分布式订单ID方案)
    Dubbo学习系列之十六(ELK海量日志分析框架)
    什么情况下不能使用 Java 泛型
    Java Stream 流如何进行合并操作
    可别在代码中写那么多魔法值了,脑壳疼!
    你知道如何自动保存 Spring Boot 应用进程号吗
    Spring 官方发起Spring Authorization Server 项目
  • 原文地址:https://www.cnblogs.com/Dincat/p/13467459.html
Copyright © 2020-2023  润新知