`
rollstone
  • 浏览: 37193 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

对话框工厂

 
阅读更多
1.对于工厂我的理解:
良好的封装性。使用和创建,初始化分开。
创建和初始化的工作交给工厂类,这样,不必在使用的地方完成大量复杂的初始化工作。
http://hi.baidu.com/wuweihi/blog/item/456a723f7bdd01c77c1e7156.html
http://blog.csai.cn/user1/25929/archives/2009/35622.html
openoffice中的对话框工厂。
对话框工厂:
F:\DEV300-hg\sd\inc\sdabstdlg.hxx
先定义好类
class AbstractAnimationDlg : public VclAbstractDialog
{
public:
//virtual void Apply(TabPage* pPage) = 0;
virtual const SfxItemSet* GetOutputItemSet() const =0;
};

1.在工厂类SdAbstractDialogFactory里定义一个纯虚函数,例如:
virtual AbstractAnimationDlg* CreateAnimationDlg( ::Window* pParent, const SfxItemSet* pAttr, ::sd::View* pView )=0;

SdAbstractDialogFactory::create()创建一个工厂对象。(怎么实现的?有纯虚的类能不能有实例?????)
=====================================================================
class SdAbstractDialogFactory_Impl : public SdAbstractDialogFactory实现了虚基类。
============================================================================================================
SdAbstractDialogFactory_Impl实现了AbstractAnimationDlg
class AbstractAnimationDlg_Impl: public AbstractAnimationDlg
{
DECL_ABSTDLG_BASE(AbstractAnimationDlg_Impl,::sd::AnimationDlg)//定义一个构造函数和虚构函数。构造函数的参数为:::sd::AnimationDlg *p,并初始化了其对象成员pDlg
//virtual void Apply( TabPage* pPage );
virtual const SfxItemSet* GetOutputItemSet() const;
};


DECL_ABSTDLG_BASE(AbstractAnimationDlg_Impl,::sd::AnimationDlg)
展开:
::sd::AnimationDlg *pDlg;
public:
AbstractAnimationDlg_Impl(::sd::AnimationDlg *p):pDlg(p)
{
}
virtual ~Class();

[0] = 0x117b3f80 SdAbstractDialogFactory_Impl::CreateBreakDlg(Window *, sd::DrawView *, sd::DrawDocShell *, unsigned long, unsigned long)
分享到:
评论

相关推荐

    Deiphi源码:函数工厂,函数生成器.rar

    deiphi函数工厂,是一个函数快速生成器,3年前的作品,纯粹是为了好玩,和一个网友一起合作写的。东西很杂,带一个数据库,能搜索一些以前搜集的资料。不过当时和朋友合作的时候,是打算写成IDE插件那样,方便自己...

    安装制作工厂Indigo Rose Setup Factory v9.5.0.0 注册汉化版

    setup factory安装工厂能生成软件安装程序,它的特性包括:工程向导、自定义对话框、主题/皮肤样式、运行时间模块、最小化支持、MD5编码序列号、250个功能函数的脚本编辑器、授权支持和其他特性等。

    首家国产独立平台的三维工厂设计管理系统UKP3d4.1安装包

    基本功能: 1.1:建模模块:管道、暖通、桥架、建筑、结构、...2.3.操作方式:改变了传统的对话框操作方式,改进为动态操作选项,极简的对象属性操作方式。 2.4.支持CAD命令行操作方式。 2.5支持多视图多模式显示方式。

    deiphi函数工厂

    对话框函数快速生成器(可生成MessageBox和MssageDlg函数) 键值快速查许(查许按键的ASCII码) 注释生成器(自动折行生成注释块) Delphi常用函数说明与示例(数据库程序,显示常见Delphi函数,有说明和例子,并且...

    bat需要弹框确认脚本(非vbs)

    bat需要弹框确认脚本,全程无调用vbs,纯bat

    CATIA二次开发CAA培训课件

    入门级资料,主要介绍CAA二次开发一般步骤,CAA V5对话框,CATIA函数工厂及拓展类邓。

    Android user版通过adb_enable开启adb 调试 不提示对话框

    进入工厂测试app自动打开adb调试模式,退出就关闭,防止客户的用户安装其它应用(直接通过改变Settings.Global.ADB_ENABLED字段) 打开usbdebug不提示弹出框 禁止调试图标出现在通知状态栏 过程分析 通过字段关闭和...

    Android user版通过adb_enable开启adb 调试 不提示对话框的流程分析

    入工厂测试app自动打开adb调试模式,退出就关闭,防止客户的用户安装其它应用(直接通过改变Settings.Global.ADB_ENABLED字段) 打开usbdebug不提示弹出框 禁止调试图标出现在通知状态栏 过程分析 通过字段关闭和...

    ASP.NET生成WORD文档服务器部署注意事项

    单击属性打开此应用程序的属性对话框。 单击"安全"选项卡,分别在"启动和激活权限"和"访问权限"组中选中"自定义",然后 自定义->编辑->添加ASP.NET账户和IUSER_计算机名 * 这些帐户仅在计算机上安装有 IIS 的情况下...

    如何在PCS 7中组态Batch.zip

    BATCH框架搭建在PCS 7工厂视图和BATCH组态对话框(Configuration dialog)进行,由于主要是在已完成的PCS 7项目中进行设备和编程,所以在实际项目执行中主要由自动化工程师按照工艺人员的要求完成。本文主要面向初次...

    利用接口特性构建可自动回收的Query对象池

    5. 可选弹出操作提示对话框,并可定制对话框内容; 简要说明: TParamItem 管理存储过程的参数; TCHintForm 内建的提示窗体; TCDataSet 继承于TCustomADODataSet的基类,完成自动回收的相关工作; TCQuery ...

    dotnet-包含MeshMakerVRUI系统的完整源代码的项目

    它包括按钮,面板和自动布局工具,如行和列容器。 它还使用基于PhysX的动力滚动器提供文件打开和保存对话框。 提供工厂脚本以从编辑器或代码快速构建这些组件。 其目的是在设计复杂的VR应用程序UI时节省时间。

    VC 判断两次字符输入是否相同

    程序涉及到设置对话框中字体,颜色的设置,功能方面可用于工厂通过扫描枪读入条形码,判断两次扫描是否相同(包装箱与设备条形码是否一致)

    jbpm开发步骤

    主菜单“文件->新建->项目”,在弹出的对话框里,有“ java Project ”项 选上好,单击“下一步”,起个名“ myjbpm ”,然后就可以单击“完成”了。然后手动 创建src/test/config copy D:\jbpm-4.0\examples\...

    GPT推出联网模式;阿里云正在实验将千问大模型接入工业机器人

    在第六届数字中国建设峰会上,阿里巴巴董事会主席兼CEO、阿里云智能集团CEO张勇透露,阿里云工程师正在实验将千问大模型接入工业机器人,在钉钉对话框输入一句人类语言,可远程指挥机器人工作。张勇表示,“制造业是...

    kodi-18.4-Leia-x86.exe

    在添加网络对话框中使用附加组件中的第一个协议 在文件+目录工厂中使用完全匹配协议 绝对路径与URL中的主机结合使用 修复vfs插件的文件时间 修复+签名HTTP文件夹 对文件系统CircularCache初始化和终止的更正 ...

    nc二次开发文档 非常详细

    在UI类中设置查询对话框的默认值 7 十五. 管理型界面单据各个类的继承关系 8 十六.是否显示行号,合计行,数组按钮,隐藏列 8 十七. 根据单据的不同状态来控制按钮的可用性。 9 十八. UI工厂开发单据模式下如何...

    MSDN杂志 2008年新产品特刊

    <br>领先技术: 使用 AJAX 的模式对话框 本月,Dino Esposito 将向您显示如何使用 Ajax 控件工具包和一些精巧的编码,为 Web 应用程序获取 Windows 样式的模式对话框。 <br>测试运行: 使用 Team System ...

    通用应用程序框架

     ufrmAppDlgBase------------------------对话框窗口基类 用户、权限与日志管理单元  Role----------------------------------权限与用户管理主要的实现单元  Log-----------------------------------日志管理...

Global site tag (gtag.js) - Google Analytics