zoukankan      html  css  js  c++  java
  • DLL文件实现窗体的模板模式

           机房合作版中第一次使用了模板方法,实现了类似窗体的界面和代码的复用。。窗体继承有两种方法,一种是通过继承选择器从已编译的程序集合里选择,另一种则是通过DLL文件的方式继承。个人觉得DLL还是比较方便的,也更符合解耦合的要求。假设模板有一点变更的话,只要改了从新编译就好了,好吧谁用谁知道。那么,这里就看看如何使用DLL来

           第一步,编写DLL文件,封装父窗体

    打开vs2010,新建项目,选择类库,然后删除它自带的类。这里我的父窗体是编辑好的,直接右击项目添加现有项到项目中。这些个步骤,就不需要上图了应该。这里,父窗体中的所有对象可以通过属性Modifiers来改变其它是私有、保护还是公共,已决定是否可以被继承。其实这个没什么用!OK,若父窗体编辑好了,就直接生成解决方案就好了。

    这时候,这个DLL文件应该在,项目ClassLibrary1ClassLibrary1in下。找到DLL文件,记住这个路径和DLL文件名。最好,直接把它考到项目下。

    这里需要注意的是,假如一开始建项目时你选的不是类库。那么就需要到项目属性里,把应用程序类型改成类库即可。如图:

     

    第二步,使用DLL文件

            首先,我们需要找到DLL文件,添加引用。其次,建立一个空的窗体,在代码页里添加:Imports DLL文件名

    这样,再通过如下代码,就可以实现对封装在DLL文件中的父窗体了。

    Imports DLL文件名
    Public Class frmInquireOnlineState
        Inherits DLL文件名.封装的窗体名
       
    End Class

    总结:

               1、模板模式通过抽象各个类的共同部分建立父类,实现对公共部分的代码复用。同时,这还保证了各个子类的结构稳定。

              2、用DLL的文件的好处是,假如编译好了之后,需要再加入一个父类。这时可以将原来的类库项目,在加入新即可。也可重新编译,相对于使用继承选择器有更高的灵活性。

  • 相关阅读:
    CPU、内存、硬盘、指令之间的关系
    hadoop配置
    python logging
    python 多线程一(lock)
    Python+OpenCV图像处理(七)—— 滤波与模糊操作
    Python+OpenCV图像处理(六)—— ROI与泛洪填充
    Python+OpenCV图像处理(五)—— 像素运算
    The MathType Dll cannot be found 问题解决办法
    Python+OpenCV图像处理(四)—— 色彩空间
    Python+OpenCV图像处理(三)—— Numpy数组操作图片
  • 原文地址:https://www.cnblogs.com/pangblog/p/3424048.html
Copyright © 2011-2022 走看看