转:Visual Basic.NET快速开发MIS系统(4)

<script type="text/javascript"><!-- google_ad_client = "pub-2947489232296736"; /* 728x15, 创建于 08-4-23MSDN */ google_ad_slot = "3624277373"; google_ad_width = 728; google_ad_height = 15; //--> </script> <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>
<script type="text/javascript"><!-- google_ad_client = "pub-2947489232296736"; /* 160x600, 创建于 08-4-23MSDN */ google_ad_slot = "4367022601"; google_ad_width = 160; google_ad_height = 600; //--> </script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>
新的要求

  现在假设有物理表tChange与tInfo表是一关联表,通过关键字段fID关联,既表tChange的字段fID的数据是通过tInfo表提供,其它来源于用户的输入,要生成tChange表数据处理的窗体。要实现这些功能,我们同样通过窗体的继承来完成(有物理表tSub也如此)。

  .先定义窗体模板frmModul2,此frmModul2继承frmModul, 即:Public Class frmModul2: Inherits Asset.frmModel。 在frmModul2中加入列表盒控制ListBox1和其它控制,布置好后如下图:



  .在frmModul2的Load事件中填充ListBox的数据并隐藏不必要的控件。

Private Sub frmModul2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles  MyBase.Load
 FillListBox(Me.ListBox1)
 Me.tlbAdd.Visible = False
End SubPublic

Sub FillListBox(ByVal ListBox As ListBox)
 Dim StrSQL As String
 StrSQL = "select Distinct fID || ' ' || fName as a FROM tInfo "
 Dim dr As OleDb.OleDbDataReader

 dr = DB.SQLDataReader(StrSQL)
 While dr.Read
  ListBox.Items.Add(dr.Item("a"))
 End While
 dr.Close()
End Sub

.当单击ListBox1时选择当前数据并填充至txt1, txt3中
Public Overridable Sub ListBox1_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles ListBox1.MouseDown
 Dim i, txt
 i = ListBox1.SelectedIndex
 txt = ListBox1.Items(i)
 txt1.Text = txt.Substring(0, 15)
 txt3.Text = txt.Substring(16, Len(txt) - 16).trim
 txtID.Text = gCls.GetMaxSystemID + 1
 gCls.FillGrid(DataGrid1)
 gIsUpdate = False
End Sub

  好了,我们的窗体模板又做好了,下面我们通过窗体模板frmModul2生成继承窗体frmChange,即:

Public Class frmChange:Inherits Asset.frmModul2

  生成的窗体如下图:



  依照前面设置所操作的表tChange和其它,不必写其它代码。

Public Sub New()

gCls.UpdateTable = "tChange"
End Sub

  同样可生成操作表tSub的窗体frmSub。




  总结

  通过以上面事例的介绍,可以生成若干同类似的窗体。不论操作多少表,都可通过窗体继承得到,物理表的操作一次性完成,不必在每个窗体中写代码,所完成的功能及界面布局全在模板窗体中完成。这样极大地降低了编写代码的工作量,同时为设置窗体整体外观提供以方便,提高了开发效率,也降低了软件的测试和维护的工作量。继承是面向对象的开发语言的一个重要组成部分,在程序设计中充分的利用继承关系,可以最大范围的提高程序的可利用性,使得用最少的代码开发比较大的应用程序。



11AIV0435035251.jpg
seover="window.status='正文--转:Visual Basic.NET快速开发MIS系统(4)';return true">
<script type="text/javascript"><!-- google_ad_client = "pub-2947489232296736"; /* 728x15, 创建于 08-4-23MSDN */ google_ad_slot = "3624277373"; google_ad_width = 728; google_ad_height = 15; //--> </script> <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>
<script type="text/javascript"><!-- google_ad_client = "pub-2947489232296736"; /* 160x600, 创建于 08-4-23MSDN */ google_ad_slot = "4367022601"; google_ad_width = 160; google_ad_height = 600; //--> </script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>
阅读更多
个人分类: .net
想对作者说点什么? 我来说一句

快速MIS/ERP开发框架系统

2010年03月06日 4.84MB 下载

Visual Basic 2010 &.NET 4 高级编程

2018年03月17日 159.47MB 下载

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭