VB控件用对了,管理系统一天就能写完
VB控件用对了,管理系统一天就能写完
很多人学VB,上来就写代码,控件随便往窗体上一拖,属性看都不看就开始编逻辑。结果做出来的界面丑不说,数据绑定全靠手写循环,一个DataGrid能写出三种不同的写法,维护起来想骂人。控件这东西,VB帮你封装好了大部分功能,你不用等于白不用。今天这篇文章,把我用了七八年的控件实战经验全部摊开来讲,全是能直接复制到项目里用的东西。
一、VB控件不是摆设,是你的武器库
☆ 1、VB6自带的标准控件有二十多个,加上第三方控件能有上百个。但真正在企业项目里反复用到的,也就那么十几个。
☆ 2、每个控件都有自己的"脾气"。TextBox有Change事件,ComboBox有DropDown事件,DataGrid有RowColChange事件。你不了解这些,就只能用最笨的办法去实现。
☆ 3、控件的属性设置决定了程序的上限。同样一个DataGrid,有人做出来像Excel,有人做出来像记事本,差距全在属性和事件上。
我刚入行那会儿,做一个出入库系统,DataGrid的数据全靠For循环一行一行读,写了两百多行代码。后来才知道,直接把Recordset绑上去,一行代码都不用写。这个教训我记了好多年。
二、五个最常用控件的实战用法
☆ 1、TextBox:不只是输入框
TextBox最常用的当然是输入,但它的Change事件才是宝。用户每输入一个字就触发一次,可以做实时搜索、输入校验、自动补全。
vb
Private Sub txtSearch_Change()
If Len(Trim(txtSearch.Text)) >= 2 Then
LoadEmployeeList txtSearch.Text
End If
End Sub
另外,TextBox的PasswordChar属性设成"*",一秒变密码框;MultiLine设成True,就变成多行文本框;Locked设成True,就变成只读显示框。这些属性很多人从来不碰。
☆ 2、ComboBox:下拉框的正确打开方式
ComboBox有两种模式:下拉组合框(Dropdown Combo)和简单组合框(Simple Combo)。做查询筛选一定要用Dropdown Combo,Style属性设成2-Dropdown List,这样用户只能选不能手动输入,数据才干净。
vb
Private Sub Form_Load()
cboDept.Style = 2 '下拉列表,不可编辑
cboDept.AddItem "全部"
cboDept.AddItem "生产部"
cboDept.AddItem "销售部"
cboDept.AddItem "行政部"
cboDept.AddItem "财务部"
cboDept.Text = "全部"
End Sub
Private Sub cboDept_Click()
LoadEmployeeList
End Sub
☆ 3、DataGrid:VB最强数据展示控件
DataGrid是VB6里最被低估的控件。它可以直接绑定Recordset,自动显示列、自动滚动、自动排序,几乎不用写代码。
vb
Private Sub LoadEmployeeList(Optional keyword As String = "")
Dim sql As String
sql = "SELECT 工号, 姓名, 部门, 电话 FROM 员工表 WHERE 1=1"
If keyword <> "" Then
sql = sql & " AND 姓名 LIKE '%" & keyword & "%'"
End If
sql = sql & " ORDER BY 工号"
Dim rs As ADODB.Recordset
Set rs = modDB.GetReco
