小区物业管理系统-总结-项目特色
4.1项目log
注:此log有版权,使用需受到拥有者授权
灵感来自域名.com和大公司log设计,以_COM为log,模仿大公司log设计,以白色Ravie字体的_COM为主体,橙色背景构成,取名点康姆科技。
图4.1- 1 log
图4.1- 2 章子
4.2窗体构造器
为每一个窗体添加构造器,所有项目只能从login运行
避免恶意操作
Public Sub New(u As User)
InitializeComponent()
user = u
End Sub
图4.2- 1
4.3页面动态变换
通过对某些组件可见的设置,在同一页面完成多个功能
图4.3- 1
图4.3- 2
4.4多条件模糊查询及封装对象
Public Function ProprietorSelectLike(pnoandName As String)
Dim pro(100) As Proprietor
Try
Dim objconn As New OleDbConnection(conn) '创建连接对象
Dim objAdap As OleDbDataAdapter '创建适配对象
Dim objDataSet As New DataSet '创建数据集对象
Dim strsql As String = "select * from Proprietor where Pno like '" & pnoandName & "%' or Pname like '" & pnoandName & "%'or Psex like '" & pnoandName & "%' or P_Bno like '" & pnoandName & "%' or P_Gno like '" & pnoandName & "%'"
objAdap = New OleDbDataAdapter(strsql, objconn)
objDataSet.Reset() '清除数据集
objAdap.Fill(objDataSet, "Pro") '第二个参数就是给这个虚拟表起个名字
' For i = 0 To 7
'MsgBox(objDataSet.Tables("Pro").Rows(0).Item(i))
'Next
For i = 0 To Int(objDataSet.Tables("Pro").Rows.Count) - 1
Dim proprietor As New Proprietor
proprietor.pnoSet(objDataSet.Tables("Pro").Rows(i).Item(0))
proprietor.pnameSet(objDataSet.Tables("Pro").Rows(i).Item(1))
proprietor.p_bnoSet(objDataSet.Tables("Pro").Rows(i).Item(2))
proprietor.p_gnoSet(objDataSet.Tables("Pro").Rows(i).Item(3))
proprietor.psexSet(objDataSet.Tables("Pro").Rows(i).Item(4))
proprietor.pageSet(objDataSet.Tables("Pro").Rows(i).Item(5))
proprietor.pnativeSet(objDataSet.Tables("Pro").Rows(i).Item(6))
pro(i + 1) = proprietor
Next
Catch ex As Exception
MsgBox("ProprietorSelectForPnoName" + ex.Message)
End Try
Return pro
End Function
4.5封装多用函数
为函数设置参数,可使得同一函数对多个表,多个用户,完成多个功能
对照片的操作全是此方法(unilt/PhotoUnilt.vb)
Public Sub Photo_Insert(OpenFileDialog1 As OpenFileDialog, Table As String, Type As String, name As String, lie As String)
Dim apppath2 As String
apppath2 = Application.StartupPath + "\照片"
OpenFileDialog1.InitialDirectory = apppath2
OpenFileDialog1.Filter = "pictures(*.jpg)|*.jpg"
OpenFileDialog1.FileName = ""
OpenFileDialog1.ShowDialog()
Dim objconn As New SqlConnection(conn2)
objconn.Open()
Dim objfile As New FileStream(OpenFileDialog1.FileName, FileMode.Open, FileAccess.Read)
Dim wj() As Byte
ReDim wj(objfile.Length)
objfile.Read(wj, 0, objfile.Length)
objfile.Close()
Dim zp As String = "update " & Table & " set " & lie & "=@img where " & Type & "='" & name & "'"
Dim objcmd1 As New SqlCommand(zp, objconn)
objcmd1.Parameters.Add("@img", SqlDbType.Binary).Value = wj
objcmd1.ExecuteNonQuery()
objcmd1 = Nothing
objconn.Close()
End Sub
4.6实体类
对数据库表做实体类抽象,创建私有属性,并加以get,set方法,对属性存取,非vb.net正规写法
Public Class PropetyManager
Private pmno As String
Private pmname As String
Private pmsex As String
Private pmage As Integer
Private pmedu As String
Private pmnative As String
Private pmdept As String
Private pm_leader As String
Public Function pmnoGet()
Return pmno
End Function
Public Sub pmnoSet(no As String)
pmno = no
End Sub
Public Function pmnameGet()
Return pmname
End Function
Public Sub pmnameSet(name As String)
pmname = name
End Sub
Public Function pmsexGet()
Return pmsex
End Function
Public Sub pmsexSet(sex As String)
pmsex = sex
End Sub
Public Function pmageGet()
Return pmage
End Function
Public Sub pmageSet(age As Integer)
pmage = age
End Sub
Public Function pmeduGet()
Return pmedu
End Function
Public Sub pmeduSet(edu As String)
pmedu = edu
End Sub
Public Function pmnativeGet()
Return pmnative
End Function
Public Sub pmnativeSet(native As String)
pmnative = native
End Sub
Public Function pmdeptGet()
Return pmdept
End Function
Public Sub pmdeptSet(dept As String)
pmdept = dept
End Sub
Public Function pm_leaderGet()
Return pm_leader
End Function
Public Sub pm_leaderSet(leader As String)
pm_leader = leader
End Sub
End Class