教程中国
PHOTOSHOP CS9.0中文版 MAYA 8.5 FOR WINDOWS Corel Painter v9.0 Flash MX2004 中文版 Illustrator cs2 中文版
VC++6.0含sp6 中英文版 VB6.0 +sp6 简体中文版 Borland Delphi 7汉化版 MSDN for vb6.0中文版 Visual Studio 2005简体
教程中国下属 文件存储共享专家BIBIDU.COM 提供大型软件,教材,源码,电影,音乐,图书等下载 更多精品请点此进入
  您目前所在位置: 教程中国 >> .NET类 >> VB.NET >> Visual Basic.NET快速开发MIS系统(3) RSS订阅
Visual Basic.NET快速开发MIS系统(3)
教程(视频,书籍)下载:  ASP.NET AutoCAD 数据库 C# ASP java photoshop 网页设计 delphi 3dmax Flash C++ VB 张孝祥 实例   更多请进入BIBIDU搜索
IT搜索引擎   
生成继承窗体

  生成继承窗体

  我们的编程工作大部分都完成了,现在只需要增加新的继承窗体Form就可,方法是在Form项或项目菜单或工具栏选择添加继承的窗体,在弹出的Form中输入窗体名frmUser按打开,在选择继承器中选择FrmModule确定就生成了一新的窗体。 继承的继承如下:

Public Class frmUser:Inherits frmModel

  在生成的窗体中增加一些必要的控件,同时与根据表中字段对应关系设置的TabIndex的值。

  通过设置控件TabIndex的值,可以把该控件与物理表中的字段关系对应起来,如TabIndex为1,则对应物理表的第1个字段,如TabIndex为2,则对应物理表的第2个字段,如此例推。这方便把输入控件的数据写入表中,把网格数据写入输入控件中,这是技巧,其实现过程见方法:WriteDateToArray(),DataGridToText()。

  指定物理表

  在类frmUser的New方法中指定所操作的物理表名tUser。为什么要在这里指定表名呢?是因为程序在调用frmUser前,先必须申请frmUser的实类,同时进行实类化,自动执行构造&&函数New(),执行New()时,就把我们所要完成的功能代码放在这里,让它们自动执行。

Public Sub New()
 MyBase.New()
 '该调用是 Windows 窗体设计器所必需的。
 InitializeComponent()
 gCls.UpdateTable = "tUser"
 '在 InitializeComponent() 调用之后添加任何初始化
End Sub

  更改控件的&&属性,隐藏不需要的控件

  在 frmUser的Load&&事件中更改DataGrid1的标题并隐藏不需要的控件:

Private Sub frmUser_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles  MyBase.Load
 DataGrid1.CaptionText = "用户列表"
 cbo.Visible = False
 Me.Label6.Visible = False
End Sub

  按同样方法,生成下面的窗体frmInfo,在此窗体上增加一些新控件,如下:


  窗体frmInfo类继承frmModel:

Public Class frmInfInherits frmModel
在类frmInfo的New方法中指定所操作的物理表名tInfo。
Public Sub New()
 …
 gCls.UpdateTable = " tInfo "
End Sub

  现在,ToolBar1上增加了新的方法"导入",应该怎样处理呢?事实上只要在frmInfo的ToolBar1_ButtonClick&&事件中识别时"导入",写要处理的任务就可,如下:

Private Sub ToolBar1_ButtonClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.ToolBarButtonClickEventArgs) Handles ToolBar1.ButtonClick
 Select Case e.Button.Text
 Case "导入"
  …
 End Select
End Sub


  通过上面的窗体继承方法,凡是对物理表的操作都可以通过这些方法来完成,而不必再重复编写代码。

新的要求

  现在假设有物理表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

来源:十度教育
作者:
关键字:Visual
发表日期:2006-5-14 1:24:36

网页显示有限 阅读全文请下载本文完整版WORD文档

上一篇:Visual Basic.NET快速开发MIS系统(2)   下一篇:Visual Basic.NET快速开发MIS系统(4)


2008-8-28 19:28:34
本文的相类似文章
  • Visual Basic_美化你的文字
  • Visual Basic 6中发送邮件的新方法
  • Visual Basic 中字符淡出淡入的实现
  • 想不到的VB指针用法{Visual Basic6.0}
  • Visual C#的SQL Server编程
  • 建立你自己的浏览器-发送到Visual Interdev
  • Visual Basic小游戏:猜英雄
  • Visual Basic的九次蜕变
  • Visual Basic内嵌汇编语言解决方案
  • Visual Basic不可能消失
  • 在学习中进步 在进步中成长 教程中国相随您的成长之路
    华腾联合科技股份有限公司版权所有
    广告联系:Rosibo@163.com