通用控件属性设置函数

原创 2008年09月29日 00:52:00

        在优化一个软件时,发现了大量同类控件的属性设置问题。这些控件都具有相同的属性,需要编写大量重复的代码,非常难看,一旦改变,还需要全部重新写上一遍,效率非常低。于是,突发奇想,并借助CallByName函数,构造了一个通用的控件属性设置函数,节约了很多程序,有利于生成高性能的运行代码。

 

       一、函数构造

 

  1. '通用控件属性设置函数
  2. '参数说明:Frm,控件所在窗体;CtrlName,Frm窗体上的控件名字;LMin,Lmax分别是控件的最小、最大编号;cPropertyName,表示要设置的属性名称;bProperty,表示要设置的控件属性。
  3. '    作    者:Chenjl1031(东方之珠)
  4. '    编写时间:2008.9.28
  5. Public Function SetControlProperty(Frm As Form, ByVal CtrlName As StringByVal LMin As LongByVal Lmax As LongByVal cPropertyName As StringByVal bProperty As Variant)
  6.       Dim comCtrl As Control '通用控件
  7.        Dim comCtrlName As String '通用控件名字
  8.        For Each comCtrl In Frm '枚举窗体Frm上的控件
  9.            If InStr(comCtrl.Name, CtrlName) > 0 Then '是否指定控件名
  10.               comCtrlName = comCtrl.Name '获取控件名称
  11.               Mid(comCtrlName, 1, Len(CtrlName)) = Space(Len(CtrlName)) '获取控件编号
  12.               If (Val(comCtrlName) >= LMin And Val(comCtrlName) <= Lmax) Then '指定范围内的控件
  13.                  CallByName comCtrl, cPropertyName, VbLet, bProperty '设置属性
  14.               End If
  15.            End If
  16.        Next
  17. End Function

        二、调用方法
   
    例如:要将下面自身窗体中20个Image控件设置为不可见,只须写上一行:

  1. Call SetControlProperty(Me"Image", 1, 20, "Visible"False)

    非常方便;当属性改变时,即这20个Image控件要全部可见,只须写上一行:
         

  1. Call SetControlProperty(Me"Image", 1, 10, "Visible"True)

      
    Image1.Visible = False
    Image2.Visible = False
    Image3.Visible = False
    Image4.Visible = False
    Image5.Visible = False
    Image6.Visible = False
    Image7.Visible = False
    Image8.Visible = False
    Image9.Visible = False
    .......................
    Image20.Visible = False

    再如:要将窗体Form1中下面10个图片框的背景色全部设置成&H8000000F,只须:
          Call SetControlProperty(Form1, "Picture", 1, 10, "BackColor",&H8000000F)

 

    Picture1.BackColor = &H8000000F
    Picture2.BackColor = &H8000000F
    Picture3.BackColor = &H8000000F
    ...............................
    Picture10.BackColor = &H8000000F

 

        三、其它

    该函数一般可以放在标准模块中。当然,也可以编写成ActiveX DLL。

MFC的ActiveX控件开发(属性)

属性 属性是 ActiveX 控件中向所有容器公开的数据成员。与事件和方法类似,也分为常用属性和自定义属性。 常用属性 常用属性已由 COleControl 类实现。COleControl 类包...
  • c_nancy
  • c_nancy
  • 2013年02月05日 14:52
  • 764

Android常用控件及其属性

match_parent表示让当前控件的大小和父布局的大小一样,也就是由父布局来决定当前控件的大小 wrap_content表示让当前控件的大小能够刚好包含住里面的内容也就是由控件内容决定当前控件的大...
  • DuanLiuchang
  • DuanLiuchang
  • 2016年05月11日 18:04
  • 2257

Qt笔记:设置控件的基本属性

Qt笔记,一些新手整理的基本知识点
  • u013698770
  • u013698770
  • 2017年03月03日 09:16
  • 837

【安卓开发】UI设计基础1:控件的通用的属性

长和宽属性长和宽属性(layout_height 和 layout_width) 表示 View 对象在父视图中占据的矩形空间的长和宽。这两个属性通常是必须要设置的。1、 rap_content ...
  • zxfhahaha
  • zxfhahaha
  • 2017年12月27日 17:23
  • 74

Android中用代码设置控件属性的注意事项

效果图 项目结构 MainActivity中 package com.example.zhh.controlattribute; import android.app.Activity; ...
  • zhaihaohao1
  • zhaihaohao1
  • 2017年04月19日 14:58
  • 569

C#控件属性设置

一、 ComboBoxEdit 1、 如何使其不可编辑 TextEditStyle 设置为:DisableTextEditor 2、 如何设置鼠标为手形 Cursor 设置为:Hand 二、...
  • qq_37191147
  • qq_37191147
  • 2017年03月01日 21:40
  • 382

Android基本控件常用属性及方法

View: XML属性 相关方法 说明 android:alpha setAlpha(float) 设置该组件的透明度 android:background ...
  • malingguang
  • malingguang
  • 2016年06月11日 18:29
  • 238

vs2010通用属性模板

转载: 用vc很多年了, 前年在搞libcomcomcpp时, 发现了该项目建的的工程设置里面有个很有趣的vsprops, 如下图: 以前从来没有这样做过, 当时研究了一下, 发现...
  • RandyLeonard
  • RandyLeonard
  • 2014年07月02日 16:13
  • 1201

easyui 大部分控件属性

1、div easyui-window        生成一个window窗口样式。       属性如下:                    1)modal:是否生成模态窗口。true[是]...
  • CommandBaby
  • CommandBaby
  • 2014年03月31日 14:41
  • 1308

android基本控件常用的功能及属性

1.TextView1.xml属性 android:shadowColor="#0000ff"//设置字体阴影 android:shadowDx="10.0"//阴影的水平偏移量 ...
  • qq_31028313
  • qq_31028313
  • 2016年09月01日 10:58
  • 606
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:通用控件属性设置函数
举报原因:
原因补充:

(最多只允许输入30个字)