- 浏览: 257164 次
文章分类
- 全部博客 (395)
- Tech (0)
- [随笔分类]心情 (95)
- [随笔分类]技术 (112)
- [随笔分类]管理心得 (13)
- [随笔分类]Code SOP (5)
- [随笔分类]望图知意 (11)
- [网站分类]1.首页原创精华.NET区(包含架构设计、设计模式)(对首页文章的要求:原创、高质量、经过认真思考并精心写作) (8)
- [随笔分类]重构代码 (1)
- [随笔分类]童童 (2)
- Program (1)
- [随笔分类]看你知道不知道 (1)
- [网站分类]4.其他技术区 (31)
- [网站分类]3.非技术区(技术之外的文章,但不要涉及任何政治内容) (21)
- [网站分类]9.求职招聘区(个人求职、企业招聘) (0)
- [随笔分类]昨日关注 (15)
- [网站分类]6.读书区(技术书籍阅读心得、书籍推荐) (3)
- [随笔分类]一步一个脚印 (2)
- [网站分类]网站管理区(网站管理方面的疑问、建议、意见, 寻求管理员帮助) (1)
- [网站分类]2..NET新手区(用于发表不合适发表在首页的.NET技术文章,包括小经验、小技巧) (3)
最新评论
以前在开发的过程中,总是制定一个命名规范,然后在使用中总是反复的查看手册,真是麻烦,今天我在给一个兄弟展示一个新作的VB6外接程序的时候,他就说能不能自动添加控件前缀,这样就不用死记硬背了,所以试验了一下,还好,挺简单的,主要代码如下:
在这段代码中,主要是建立一个VB6 的外接程序,然后在ItemRenamed事件中,增加前缀就行了。
控件的前缀列表放到了ControlPrefixion.config文件中,如下:
3DPanel=pnl
ADOData=ado
Animatedbutton=ani
Checkbox=chk
Combobox=cbo
drop-downlistbox=cbo
Commandbutton=cmd
Commondialog=dlg
Communications=com
Data=dat
Data-boundcombobox=dbcbo
Data-boundgrid=dbgrd
Data-boundlistbox=dblst
Datacombo=dbc
Datagrid=dgd
Datalist=dbl
Datarepeater=drp
Datepicker=dtp
Directorylistbox=dir
Drivelistbox=drv
Filelistbox=fil
Flatscrollbar=fsb
Form=frm
Frame=fra
Gauge=gau
Graph=gra
Grid=grd
Hierarchicalflexgrid=flex
Horizontalscrollbar=hsb
Image=img
Imagecombo=imgcbo
ImageList=ils
Label=lbl
Lightweightcheckbox=lwchk
Lightweightcombobox=lwcbo
Lightweightcommandbutton=lwcmd
Lightweightframe=lwfra
Lightweighthorizontalscrollbar=lwhsb
Lightweightlistbox=lwlst
Lightweightoptionbutton=lwopt
Lightweighttextbox=lwtxt
Lightweightverticalscrollbar=lwvsb
Line=lin
Listbox=lst
ListView=lvw
MAPImessage=mpm
MAPIsession=mps
MCI=mci
Menu=mnu
Monthview=mvw
MSChart=ch
MSFlexgrid=msg
MSTab=mst
OLEcontainer=ole
Optionbutton=opt
Picturebox=pic
Pictureclip=clp
ProgressBar=prg
RemoteData=rd
RichTextBox=rtf
Shape=shp
Slider=sld
Spin=spn
StatusBar=sta
SysInfo=sys
TabStrip=tab
Textbox=txt
Timer=tmr
Toolbar=tlb
TreeView=tre
UpDown=upd
Verticalscrollbar=vsb
一旦加载了这个插件,当在窗体上增加了一个控件后,比如一个Command后,当在属性窗口中将名称改为“OK”后,系统自动增加“cmd”在控件名称前边,变成“cmdOK”,这样再也不用记住控件的前缀了。
有了这个,兄弟很高兴,至少可以将手册变得薄一点了。
在开发这个插件过程中,有点需要注意,就是一个公司总是有各种规范来规定程序员的代码开发规范,其实如果能够提供一些自动工具或者模板工具的话,程序员就不需要死记硬背了,所有的规范程序员也就自动遵守了,也就没有烦恼了,这样才是最好的办法,项目经理也就轻松了,^_^。
Public WithEvents CtlHandler As VBControlsEvents
'监控控件名称前缀
Private Sub WatchNamePrefixion(ByVal VBControl As VBIDE.VBControl)
Dim FileContent As String
FileContent = ReadAll(App.Path & "\ControlPrefixion.config")
FileContent = Replace(FileContent, " ", "")
Dim Rows() As String
Dim Cols() As String
Dim i As Integer
Dim ii As Integer
Rows = Split(FileContent, vbCrLf)
For i = LBound(Rows) To UBound(Rows)
Cols = Split(Rows(i), "=")
If UBound(Cols) = 1 Then
If UCase(VBA.TypeName(VBControl.ControlObject)) = UCase(Cols(0)) Then
If UCase(VBA.Left(VBControl.Properties("Name"), Len(Cols(1)))) <> UCase(Cols(1)) Then
VBControl.Properties("Name") = Cols(1) & VBControl.Properties("Name")
End If
Exit For
End If
End If
Next
Erase Rows
Erase Cols
End Sub
Private Sub CtlHandler_ItemRenamed(ByVal VBControl As VBIDE.VBControl, ByVal OldName As String, ByVal OldIndex As Long)
WatchNamePrefixion VBControl
End Sub
Private Sub WatchNamePrefixion(ByVal VBControl As VBIDE.VBControl)
Dim FileContent As String
FileContent = ReadAll(App.Path & "\ControlPrefixion.config")
FileContent = Replace(FileContent, " ", "")
Dim Rows() As String
Dim Cols() As String
Dim i As Integer
Dim ii As Integer
Rows = Split(FileContent, vbCrLf)
For i = LBound(Rows) To UBound(Rows)
Cols = Split(Rows(i), "=")
If UBound(Cols) = 1 Then
If UCase(VBA.TypeName(VBControl.ControlObject)) = UCase(Cols(0)) Then
If UCase(VBA.Left(VBControl.Properties("Name"), Len(Cols(1)))) <> UCase(Cols(1)) Then
VBControl.Properties("Name") = Cols(1) & VBControl.Properties("Name")
End If
Exit For
End If
End If
Next
Erase Rows
Erase Cols
End Sub
Private Sub CtlHandler_ItemRenamed(ByVal VBControl As VBIDE.VBControl, ByVal OldName As String, ByVal OldIndex As Long)
WatchNamePrefixion VBControl
End Sub
在这段代码中,主要是建立一个VB6 的外接程序,然后在ItemRenamed事件中,增加前缀就行了。
控件的前缀列表放到了ControlPrefixion.config文件中,如下:
3DPanel=pnl
ADOData=ado
Animatedbutton=ani
Checkbox=chk
Combobox=cbo
drop-downlistbox=cbo
Commandbutton=cmd
Commondialog=dlg
Communications=com
Data=dat
Data-boundcombobox=dbcbo
Data-boundgrid=dbgrd
Data-boundlistbox=dblst
Datacombo=dbc
Datagrid=dgd
Datalist=dbl
Datarepeater=drp
Datepicker=dtp
Directorylistbox=dir
Drivelistbox=drv
Filelistbox=fil
Flatscrollbar=fsb
Form=frm
Frame=fra
Gauge=gau
Graph=gra
Grid=grd
Hierarchicalflexgrid=flex
Horizontalscrollbar=hsb
Image=img
Imagecombo=imgcbo
ImageList=ils
Label=lbl
Lightweightcheckbox=lwchk
Lightweightcombobox=lwcbo
Lightweightcommandbutton=lwcmd
Lightweightframe=lwfra
Lightweighthorizontalscrollbar=lwhsb
Lightweightlistbox=lwlst
Lightweightoptionbutton=lwopt
Lightweighttextbox=lwtxt
Lightweightverticalscrollbar=lwvsb
Line=lin
Listbox=lst
ListView=lvw
MAPImessage=mpm
MAPIsession=mps
MCI=mci
Menu=mnu
Monthview=mvw
MSChart=ch
MSFlexgrid=msg
MSTab=mst
OLEcontainer=ole
Optionbutton=opt
Picturebox=pic
Pictureclip=clp
ProgressBar=prg
RemoteData=rd
RichTextBox=rtf
Shape=shp
Slider=sld
Spin=spn
StatusBar=sta
SysInfo=sys
TabStrip=tab
Textbox=txt
Timer=tmr
Toolbar=tlb
TreeView=tre
UpDown=upd
Verticalscrollbar=vsb
一旦加载了这个插件,当在窗体上增加了一个控件后,比如一个Command后,当在属性窗口中将名称改为“OK”后,系统自动增加“cmd”在控件名称前边,变成“cmdOK”,这样再也不用记住控件的前缀了。
有了这个,兄弟很高兴,至少可以将手册变得薄一点了。
在开发这个插件过程中,有点需要注意,就是一个公司总是有各种规范来规定程序员的代码开发规范,其实如果能够提供一些自动工具或者模板工具的话,程序员就不需要死记硬背了,所有的规范程序员也就自动遵守了,也就没有烦恼了,这样才是最好的办法,项目经理也就轻松了,^_^。
发表评论
-
启动NDuiker项目
2005-01-20 17:05 460今天是进驻博客园的第一天,在这里安家真的很不错,十分感谢DuD ... -
NDuiker项目第2天总结
2005-01-21 08:53 657昨天晚上基本上实现了 ... -
NDuiker项目第3天
2005-01-22 22:50 587今天是周六了,原本以为是很轻松的一天,结果只有到了这个时 ... -
NDuiker项目第6天
2005-01-25 16:50 593这几天好忙,也好累呀,这几天是公司项目收尾的阶段,忙的都透不过 ... -
对.Net 类库的一点思索
2005-02-02 09:29 614这些天主要在测试GDI+的 ... -
测试一个网站的想法
2005-02-05 17:07 547由于项目的需要,测试了一下“上海研发公共服务平台” 登录:ht ... -
项目建议书编写总结
2005-02-25 15:46 777昨天完成了项目建议书的编写工作,整个春节期间的工作到今天全部完 ... -
MyIE 增加了RSS功能
2005-02-28 09:54 575今天更新了MyIE,发现MyIE增加了RSS功能,试用了一下, ... -
www.beihua.edu.cn计划摘录
2005-02-28 14:11 785www.beihua.edu.cn工作计划 1:网站后期制作计 ... -
网站调研资料记录
2005-03-01 15:56 633资料整理备忘 1:内外网IP确认 ... -
静静的看书
2005-03-08 17:18 585这几天还是很忙,但是似乎好了很多,因为目前主要是写一个基于Sm ... -
我的Smart Client 的学习笔记
2005-03-09 15:35 1701User Interface Process (UIP) Ap ... -
研发、开发、运营
2005-03-25 12:15 637这些天很忙,网络也不争气,才刚刚好一点。 ... -
当需求变更来临
2005-04-30 14:26 544昨晚已经和老婆安排好5 ... -
重新登录Window2003的域
2005-05-12 09:58 688今天公司要求重新登录Windows2003的域,记录一下,以后 ... -
当不愿意写字得时候
2005-05-16 15:36 716做项目得前期分析得时候,我还是比较喜欢在本子上写写、画画得,通 ... -
远离技术的时候
2005-06-20 11:05 436这一个月一直在忙一个项目,现在项目的可研报告也 ... -
Asp.Net 中使用客户端Activex控件需要注意的事情
2005-08-13 12:57 957案例:Asp.Net +VB制作的Activex控件 操作系统 ... -
Office开发中的测试的与众不同之处
2005-08-22 14:29 731今天修改了一下自己以 ... -
大家确实都很忙
2005-08-27 08:20 738先谈几个技术问题: 1 ...
相关推荐
VB下插件(Add-Ins)编程[VB下插件(Add-Ins)编程]-精品源代码
在VB6中,ADD-in可以用来自动化重复性任务,提高开发效率,或者添加VB6不自带但开发者需要的功能。这款ADD-in工具不仅是一个实用程序,还作为学习ADD-in编程的实例,意味着它可能包含源代码和详细的教程,帮助初学者...
当前,.NET Add-Ins也逐渐融入云计算环境,例如Office 365中的Add-Ins可以直接连接到云服务,实现数据同步和远程协作。 总结起来,.NET Macros和Add-Ins的发展历程反映了软件工程中的进步,包括语言的进化、安全性...
为了实现启动时自动禁止装入特定的 Add-Ins,可以通过修改 IDE 的配置文件来达到目的。以下是在 Visual Basic 中操作的一个具体示例: ##### 修改 VBAddin.INI 文件 1. **定位文件位置**:首先,找到存储 Add-Ins ...
vb控件pingvb控件pingvb控件pingvb控件pingvb控件pingvb控件pingvb控件pingvb控件ping
**CodeHelp(VB6 add-in)** 是一个专为Visual Basic 6 (VB6)开发的增强工具,旨在提升程序员的工作效率和代码编写体验。作为一款插件,它整合到VB6环境中,提供了一系列实用的功能,如Tab条切换窗口、调整tabindex、...
标题“VB60SP6-KB2708437-x86...这个过程涉及到ActiveX控件、类型库注册、Windows Installer技术等多个知识点,对于使用VB6进行开发的程序员来说,理解并正确应用这个补丁至关重要,可以避免因控件问题导致的软件故障。
在VB(Visual Basic)开发过程中,许可证问题是一个常见的困扰,特别是在使用特定的VB控件时。这些控件可能需要合法的许可证才能在项目中正常工作,否则会限制或阻止其功能。"vb许可证-解决vb控件的许可证问题"这个...
VB程序实例-能自动选中文本的TextBox控件.zip
在这个案例中,"案例2-2 使用ADO.NET控件查询Access数据库"可能包含了如何在VB2005界面中添加控件(如DataGridView),并通过编程方式设置控件的数据源,从而显示查询结果。这涉及到了控件的事件处理,如Load事件或...
在VB2005中,开发人员经常使用ADO.NET控件来与SQL Server数据库进行交互。这个案例将详细讲解如何利用ADO.NET控件实现数据库的查询操作。ADO.NET是.NET框架的一部分,它提供了高效、灵活的数据访问接口,使得开发者...
在VB(Visual Basic)编程环境中,日期时间控件是一种非常实用的组件,它允许用户在应用程序中选择或输入日期和时间。在这个特定的例子中,我们讨论的是一个专为VB设计的日期时间控件,该控件提供了对年、月、日以及...
总的来说,VB6-Mini 20160110是VB6企业版的一个轻量级替代品,它以简洁的界面和丰富的控件库为开发者提供了便利。对于那些寻求快速开发和原型制作的个人或团队,这款工具无疑是一个理想的选择。通过合理利用VB6-Mini...
在VB6(Visual Basic 6)编程环境中,自动缩放窗体内控件是一个常见的需求,尤其是在设计用户界面时,为了适应不同分辨率或屏幕尺寸的设备,开发者需要让控件能够根据窗口大小的变化自动调整其位置和大小。标题“VB6...
### VB.NET 中 ComboBox 控件详解 #### 一、概述 在 VB.NET 开发环境中,`ComboBox` 控件是一种非常常见的用户界面元素,它结合了文本框和列表框的功能,允许用户从预定义的列表中选择一项,同时也支持用户手动...
我这里花了一百大洋买了个通信控件 但是卖的那个贱人不给我说明书就 不理了 我的QQ345324289 麻烦有需要的人去试试 顺便告诉下我 或者加我QQ... 这个控件我已经测试过VB区域的读写 但是M区的 不会用 希望大家 多多指教
### vb.net中实现类似VB6的控件数组功能 #### 背景介绍 在经典编程语言Visual Basic 6.0(简称VB6)中,控件数组是一种非常实用的功能,它允许开发者创建一系列具有相同名称但不同索引的控件。这种方式极大地简化了...
当列表框中的项目过多无法完全显示时,VB会自动在列表框旁边添加垂直滚动条,允许用户通过滚动查看列表框中未显示的部分。滚动条有两种类型:水平(Horizontal)和垂直(Vertical),可通过调整Scroll事件的参数来...
VB-PowerWrap 允许开发者在发布他们的程序时不需要再加入一大堆 的 OCX 与 DLL 文件。该程序可以帮助 Visual Basic 程序员在发布他们 的可执行文件时不需要再担心关于其他链接库与 OCX 的问题了。VB-Powe rWrap 允许...
VB程序实例-使用WebBrowser控件浏览网页.zip