• 窗体设计器的使用套件


    窗体设计器,这个东西大家都不会陌生!最进一段时间,一直在弄关于动态设计窗体控件的东西。放放拣拣,搞了好长一段时间了。这次出差回来,终于全部都弄完了。其为一套组件,共包括6个控件,分别为Formdesigner(窗体设计器),DsControlPanel(控件面板体现器),DsnInspector(对象监测器),DsnManager(设计器管理器),DsnSelect(控件选择器),DsnControlContainer(非可见控件容器)。呵呵,通过这6个控件可以很简单的设计,所有Delphi中的控件,包括第三方控件。
    设计界面:
        
    这个是设计界面了,如果是非可见组件的话,拖一个TDsnControlContainer非可见组件容器到DsControlPanel(控件面板体现器)上,此时会弹出一个对话框如下:

    此时,你输入一个连接的非可见组件的名称,比如,我们输入TTimer,则对应就会生成一个和TTimer连接的控件Button,则此时,(控件面板体现器)如下:

    呵呵,然后,在窗体的OnShow事件中将  窗体设计管理器 的Active属性设为True则可
     self.DxDsnManager1.Active := true;
    看看程序的效果吧

    如果是加入的第三方控件,则 控件面板展现器  有一个事件 OnRegisterControl事件里面有一个参数NewArray它是一个Var变量,我们只用在这个事件中将自己的第三方的控件类加入该数组则可,例如,将CnPack中的
    TCnSQLAnalyzer查询分析器组件加入设计器中进行设计,我们先将TCnSQLAnalyzer组件拖到控件面板上,让面板自动生成对应的连接按扭,此时界面如下:

    那个选中的按扭则为TCnSQLAnalyzer控件对应的连接器。
    然后在事件中写代码如下:
    procedure TForm1.DxDsControlPanel1RegisterControl(
      var NewArray: TclassesArray);
    begin
       SetLength(NewArray,1);
       NewArray[0] := TCnSQLAnalyzer;  
    end;
    运行之后看效果吧,呵呵,效果如下:
  • 相关阅读:
    ES6学习笔记(五)函数的扩展
    ES6学习笔记(四)数值的扩展
    ES6学习笔记(二)变量的解构与赋值
    ES6学习笔记(一)新的变量定义命令let和const
    JS对象继承与原型链
    JS构造函数、对象工厂、原型模式
    获取地图的坐标
    大屏页面
    如何更新git?
    ES6——多个箭头函数
  • 原文地址:https://www.cnblogs.com/lechance/p/4373241.html
Copyright © 2020-2023  润新知