前言
学习VB已经有很长的一段时间了,现在这个阶段应该是总结的时候。
VB总结是必不可少的,将知识点,知识块进行打包,颗粒归仓,与已有的知识联系起来。并且在此基础之上编制知识网,让自己的知识达到牵一发而动全身的效果。编织知识网是一个非常重要的环节,就像你学习一门武林秘籍,将各个招式学完还不算完事,最后要打通任督二脉,将各个招式连成一体,这样才会成为绝世高人。
机房收费系统
在做机房收费系统的时候我们要有模块化的思想。机房收费系统说白了就是几个功能的循环复用,那么与这些功能相对应的代码块我们就要循环使用。如果我们有了模块化的思想,就可以将这些代码块封装成一个模块,等到使用这些代码块的时候就可以直接调用。
- 自动调节MShflexgrid各列列宽为最合适的宽度
Public Sub AdjustColWidth(frmCur As Form,gridCur As Object,Optional bNullRow As Boolean = True,Optional dblIncWidth As Double = 0)
'--------------------------------------------------------------------
'功能:
' 自动调整Grid各列列宽为最合适的宽度
'参数:
' [frmCur].........................................当前工作窗体
' [gridCur]........................................当前要调整的Grid
'--------------------------------------------------------------------
Dim i,j As Integer
Dim dblWidth As Double
With gridCur
For i = 0 To .cols - 1
dblWidth = 0
If .ColWidth(i) <> 0 Then
For j = 0 To .rows - 1
If frmCur.TextWidth(.TextMatrix(j,i)) > dblWidth Then
dblWidth = frmCur.TextWidth(.TextMatrix(j,i))
End If
Next
.ColWidth(i) = dblWidth + dblIncWidth + 1000
End If
Next
End With
End Sub
- 清除窗体中所有文本
Dim ctl As Control
Dim ctl1 As Control
'清除text文本
For Each ctl In Controls
If TypeOf ctl Is TextBox Then
ctl.Text = ""
End If
Next ctl
'清除comboBox文本
For Each ctl1 In Controls
If TypeOf ctl1 Is ComboBox Then
ctl1.Text = ""
End If
Next ctl1
- 实现打开另一个窗体当前窗体自动最小化
Private Sub Form_Activate()
Dim a As Form
For Each a In Forms
If a.Name <> Me.Name And a.Name <> frmMain.Name Then
a.WindowState = 1
End If
Next
End Sub
学生信息管理系统
学生信息管理系统较机房收费系统来说,比较基础。逻辑性很简单,代码少,代码块更少。这里只想说一点,那就是如何使用VB代码连接sql Server 2014。
Dim txtsql As String
Dim MsgText As String
Dim mrc As ADODB.Recordset
txtsql = "select * from User_info "
Set mrc = Executesql(txtsql,MsgText)
mrc.close
后记
回过头来再看看之前学过的知识会有不一样的感受,所以阶段性回顾和总结是非常有必要的。