读书人

协作版机房收费系统2

发布时间: 2013-03-22 09:49:50 作者: rapoo

合作版机房收费系统2

1.利用KeyPress,控制输入,只能是数字.具体请参看:Public Class frmControlInput '用于控制文本的输入,比如卡号,只允许输入数字 Public Shared Sub ControlInputNum(ByVal e As System.Windows.Forms.KeyPressEventArgs) '如果是输入的数字和退格键 If Char.IsDigit(e.KeyChar) Or e.KeyChar = Chr(8) Then e.Handled = False '可以继续输入 Else e.Handled = True End If End Sub

其中e.Handled=True表示屏蔽输入,也就是说=False,表示可以输入.想要知道KeyPress的详细内容: ''' <summary> ''' 控制数字的输入,如递增时间,最少上机时间和准备时间 ''' </summary> ''' <param name="sender"></param> ''' <param name="e"></param> ''' <remarks></remarks> Private Sub ControlInputNum(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtLeastOnLine.KeyPress, txtAddTime.KeyPress, txtReadinessTime.KeyPress '如果是输入的数字和退格键 If Char.IsDigit(e.KeyChar) Or e.KeyChar = Chr(8) Then e.Handled = False '可以继续输入 Else e.Handled = True End If End Sub

3.文本框的输入长度.

在窗体的Load事件,写上下面这句.如果太多文本框都要用到这个,就写成函数.

txtCardNo.MaxLength=11  '表示卡号文本框只能输入11位的长度

4.文本框的输入格式

利用IsNumeric,IsDate,等都可以控制,也可用正则表达式.我觉得Format,也是可以用的.

5.DateTimePicker控件

MaxDate,设置最大日期不超过今天.设置开始日期不能大于结束日期.使用上DateDiff方法,和ValueChanged时间.

6.递增卡号

查询出最大的卡号从数据库中,比如0001,这样的如何计算.在前面加1,变成10001,然后再用SubString(1),去掉第一个1.就能得到0002,而不是2.

7.状态模式

外观层调用状态的上下文类,并设置初始状态.然后进入初始状态,在初始状态类中判断是否符合,如果符合则在此类中进行,否则转到下一类中.

8.将Form类型的数据作为参数

如果要遍历Form上的所有控件,那么如果有GroupBox这个控件,这个控件里面的控件好像不会被遍历到.除非你特意指明了要遍历里面的控件.

9.导出到Excel,如果要用到这个,就将系统中的Excel,添加到引用中.

 Dim MyExcel As New Microsoft.Office.Interop.Excel.Application()

10.调试技巧

VS2010 调试技巧

读书人网 >其他相关

热点推荐