个人通讯录程序设计论文资料

更新时间:2024-05-07 18:08:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

一、 选题意义及目的

1.1课程设计选题 个人通讯录

1.2课程设计的目的

本次设计开发的软件为个人通讯录系统软件,是鉴于目前人们联系人日益增加,而传统的手工通讯录又不能跟上时代的发展步伐,人们对个人通讯录的自动化与准确化的要求日益强烈的背景下构思出来的,该软件设计完成后可用于所有个人通讯录的管理。

目前社会上信息管理系统发展飞快,各行各业都引入了信息管理软件来管理自己日益增长的各种信息,个人通讯录也是有了很大的发展,商业化的个人通讯录软件也不少。但本系统完全独立开发,力求使系统功能简洁明了,但功能齐全且易于操作。我们的交往范围不断扩大,这在丰富了我们的生活的同时也加大了我们对朋友信息记忆的难度。这不仅影响我们的正常交流,甚至该我们带来不少尴尬。这就需要我们建立一个通讯录管理系统来对我们的好友信息进行便捷的管理。通讯录管理系统的主要任务是通过大量的资料提供管理所需的信息这就必须存储和管理大量的资料。因此建立一个良好的数据组织和数据库,使整个系统都可以及时、方便、准确的调用和管理所需要的资料,是衡量信息系统开发工作好坏的重要指标之一。本系统主要是为了更好的管理每个人的通讯录,给每个人提供一个井然有序的管理平台,防止手工管理混乱,造成不必要的麻烦。 二、 需求分析

2.1一个完整的个人通讯录系统主要应该包括四个模块 (1) 登陆管理系统

输入账户密码,密码正确进入系统,用户名与密码均不能为空,若输入正确则能连接数据库显示“欢迎使用”,若密码错误则显示“密码错误”,若输入的用户错误则显示“没有此用户,请重新输入” (2)个人信息查询

输入要查询联系人的姓名、学号进入系统查找联系人 (3)个人信息维护(包括增加,修改,删除)

输入要修改联系人的姓名或学号在数据库中找到此人,输入新的联系人信息,保存修改即可完成信息修改。 (4)退出

2.2模块之间的联系可表示为 查看

添加 登录 主界面 修改

删除

登录用户表

联系人信息表

2.3 技术支持

Visual Basic是一种可视化的、面对对象和条用事件驱动方式的结构化高级程序设计,可用于开发Windows环境下的种类应用程序。它简单易学、效率高,且功能强大,可以与Windows的专业开发工具SDK相媲美,而且程序开发人员不必具有C/C++编程基础。在Visual Basic环境下,利用事件驱动的编程机制、新颖易用的可视化设计工具,使用Windows内部的应用程序接口函数,以及动态链接库、动态数据交换、对象的链接与嵌入、开放式数据访问等技术,可以高效、快速地开发出Windows环境下功能强大、图形界面丰富的应用软件系统。

总的来说,Visual Basic具有以下特点:

可视化编程: 用传统程序设计语言设计程序时,都是通过编写程序代码来设计用户界面,在设计过程中看不到界面的实际显示效果,必须编译后运行程序才能观察。如果对界面的效果不满意,还要回到程序中修改。Visual Basic提供了可视化设计工具,把Windows界面设计的复杂性“封装”起来,开发人员不必为界面设计而编写大量程序代码。只需要按设计要求的屏幕布局,用系统提供的工具,在屏幕上画出各种“部件”,即图形对象,并设置这些图形对象的属性。Visual Basic自动产生界面设计代码,程序设计人员只需要编写实现程序功能的那部分代码,从而可以大大提高程序设计的效率。 ?

面向对象的程序设计: 4.0版以后的Visual Basic支持面向对象的程序设计,但它与一般的面向对象的程序设计语言(C++)不完全相同。在一般的面向对象程序设计语言中,对象由程序代码和数据组成,是抽象的概念。而

Visual Basic则是应用面向对象的程序设计方法(OOP),把程序和数据封装起来作为一个对象,并为每个对象赋予应有的属性,使对象成为实在的东西。在设计对象时,不必编写建立和描述每个对象的程序代码,而是用工具画在界面上,Visual Basic自动生成对象的程序代码并封装起来。每个对象以图形方式显示在界面上,都是可视的。

结构化程序设计语言: Visual Basic是在BASIC语言的基础上发展起来的,具有高级程序设计语言的语句结构,接近于自然语言和人类的逻辑思维方式。Visual Basic语句简单易懂,其编辑器支持彩色代码,可自动进行语法错误检查,同时具有功能强大且使用灵活的调试器和编译器。

Visual Basic是解释型语言,在输入代码的同时,解释系统将高级语言分解翻译成计算机可以识别的机器指令,并判断每个语句的语法错误。在设计Visual Basic程序的过程中,随时可以运行程序,而在整个程序设计好之后,可以编译生成可执行文件(.EXE),脱离Visual Basic环境,直接在Windows环境下运行。

访问数据库: Visual Basic具有强大的数据库管理功能,利用数据控件和数据库管理窗口,可以直接建立或处理Microsoft Access格式的数据库,并提供了强大的数据存储和检索功能。同时,Visual Basic还能直接编辑和访问其他外部数据库,这些数据库格式都可以用Visual Basic编辑和处理。

Visual Basic提供开放式数据连接,即ODBC功能,可通过直接访问或建立连接的方式使用并操作后台大型网络数据库。在应用程序中,可以使用结构化查询语言SQL数据标准,直接访问服务器上的数据库,并提供了简单的面向对象的库操作指令和多用户数据库访问的加锁机制和网络数据库的SQL的编程技术,为单机上运行的数据库提供了SQL网络接口,以便在分布式环境中快速而有效地实现客户/服务器方案

三、程序代码 (1)登录系统

Private Sub denglubtn_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles denglubtn.Click Dim nameStr As String = uerscmb.Text Dim pwdStr As String = txtpwd.Text '初始验证用户名密码不能为空 If nameStr = \

MsgBox(\用户名不能为空\ uerscmb.Focus() Return End If

If pwdStr = \

MsgBox(\密码不能为空\ txtpwd.Focus() Return End If

'从配置文件中获取连接字符串

Dim connStr As String = ConfigurationManager.ConnectionStrings(\ongxunluConnectionString\ '建立和数据库的连接

Dim conn As SqlConnection = New SqlConnection(connStr) Dim cmd As SqlCommand = New SqlCommand() cmd.Connection = conn

cmd.CommandText = \nameStr & \

Dim reader As SqlDataReader = Nothing Try

'打开链接 conn.Open() '执行命令

reader = cmd.ExecuteReader() If reader.Read() Then

If pwdStr = reader(\ MsgBox(\欢迎使用!\ 执行.Show() Else

MsgBox(\密码错误!\ End If Else

MsgBox(\没有此用户,请重新输入!\ End If

Catch ex As Exception '抛出异常

Throw New ApplicationException(ex.ToString()) Finally

reader.Close() conn.Close()

End Try End Sub (2)注册用户

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

Dim strName As String = txtName.Text Dim strPwd1 As String = txtPwd1.Text Dim strPwd2 As String = txtPwd2.Text If strName = \

MsgBox(\用户名不能为空\提示\

txtName.Focus() Return End If

If strPwd1 = \

MsgBox(\密码不能为空\提示\

txtPwd1.Focus() Return End If

If strPwd2 = \

MsgBox(\确认密码不能为空\提示\

txtPwd2.Focus() Return

End If

If strPwd1 <> strPwd2 Then

MsgBox(\确认密码与密码必须相同\MsgBoxStyle.Information, \提示\ txtPwd2.Focus() Return End If

If strPwd1.Length < 6 Or strPwd1.Length > 10 Then

MsgBox(\密码长度在6 - 10位之间\MsgBoxStyle.Information, \提示\ txtPwd1.Focus() Return End If

‘建立连接

Dim connStr As String = _

ConfigurationManager.ConnectionStrings(\ongxunluConnectionString\

Dim conn As SqlConnection = New SqlConnection(connStr) Dim adapter As SqlDataAdapter = New SqlDataAdapter(\* from denglu\ Dim cmd As SqlCommandBuilder = New SqlCommandBuilder(adapter)

Dim ds As DataSet = New DataSet() adapter.Fill(ds, \

Dim userTable As DataTable = ds.Tables(\ Dim row As DataRow = userTable.NewRow() Dim cmm As SqlCommand = New SqlCommand() cmm.Connection = conn

cmm.CommandText = \strName & \

Dim reader As SqlDataReader conn.Open()

reader = cmm.ExecuteReader()

If reader.Read() Then

MsgBox(\用户名已存在!\ End If

reader.Close()

row(\ row(\ userTable.Rows.Add(row)

adapter.Update(ds.Tables(\ MsgBox(\注册成功\ Me.Hide() End Sub

(3)新建联系人

Private Sub NewBtn_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles NewBtn.Click If TxtId.Text = \

MsgBox(\学号不能为空\提示\

TxtId.Focus() Return End If

If TxtName.Text = \

MsgBox(\姓名不能为空\提示\

TxtName.Focus() Return End If

If Txtphone.Text = \

MsgBox(\电话不能为空\提示\

Txtphone.Focus() Return End If

If Txtqq.Text = \

MsgBox(\不能为空\提示\ Txtqq.Focus() Return End If

If Txtaddress.Text = \

MsgBox(\地址不能为空\提示\

Txtaddress.Focus() Return End If

Dim connStr As String = _

ConfigurationManager.ConnectionStrings(\ongxunluConnectionString\

Dim conn As SqlConnection = New SqlConnection(connStr) Dim adapter As SqlDataAdapter = New SqlDataAdapter(\* from lianxirentable\ Dim cmd As SqlCommandBuilder = New SqlCommandBuilder(adapter)

Dim ds As DataSet = New DataSet() adapter.Fill(ds, \

Dim userTable As DataTable = ds.Tables(\ Dim row As DataRow = userTable.NewRow()

Dim cmm As SqlCommand = New SqlCommand() cmm.Connection = conn

cmm.CommandText = \& TxtId.Text & \

Dim reader As SqlDataReader

conn.Open()

reader = cmm.ExecuteReader()

If reader.Read() Then

MsgBox(\学号已存在!\ Return End If

reader.Close() ‘获取输入信息

row(\

row(\

If RadioButton1.Checked = True Then row(\ Else

row(\ End If

row(\ row(\

row(\ row(\ row(\ userTable.Rows.Add(row) ’更新到表

adapter.Update(ds.Tables(\ MsgBox(\添加成功\ Me.Hide()

End Sub (4)查看联系人

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

If ComboBox1.Text = \请选择\

MsgBox(\请选择查询方式\提示\ Exit Sub

ElseIf ComboBox1.Text = \学号\ Dim str As String = TextBox1.Text

Dgvlianxiren.DataSource = TongxunluDataSet1.lianxirentable.Select(\

ElseIf ComboBox1.Text = \姓名\

Dim str As String = TextBox1.Text

Dgvlianxiren.DataSource = TongxunluDataSet1.lianxirentable.Select(\& str & \

End If

If TextBox1.Text = \

MsgBox(\请输入查询条件\警告\ Exit Sub End If

End Sub (5)修改联系人

Private Sub Baocunbtn_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Baocunbtn.Click

Dim row As DataRow = BindingContext(Dgvlianxiren.DataSource, Dgvlianxiren.DataMember).Current.row

'修改行中对应字段的数据 'row(\ row(\

If RadioButton1.Checked = True Then row(\ Else

row(\ End If

row(\ row(\ row(\

row(\ row(\ '提交到数据库

LianxirentableTableAdapter.Update(TongxunluDataSet2.lianxirentable)

TongxunluDataSet2.lianxirentable.AcceptChanges()

End Sub

(6)删除联系人

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click

If MsgBox(\确定要删除此行数据吗?\MsgBoxResult.Ok Then

'得到当前选中行对应的DAtatable中的DataRow

Dim row As DataRow = BindingContext(dgvlianxiren.DataSource,

dgvlianxiren.DataMember).Current.Row '删除此行 row.Delete() '更新到数据库

LianxirentableTableAdapter.Update(TongxunluDataSet3.lianxirentable)

TongxunluDataSet3.lianxirentable.AcceptChanges()

End If

End Sub

四、运行界面及文字说明 (1)登录系统

图1主界面

输入账号密码进入系统,用户名与密码均不能为空,若输入正确则能连接数据库显示“欢迎使用”,若密码错误则显示“密码错误”,若输入的用户错误则显示“没有此用户,请重新输入”

图2登录界面 图3 登录正确界面 账户密码输入正确自动进入执行主页面

图4执行界面 点击相应模块进入相应界面 (2)新建联系人

图5新建联系人界面

图6添加新建联系人信息界面

图7添加联系人成功界面 (3)查看联系人

可选择输入姓名或学号点击确定连入数据库查看已经存在的联系人。

图8查看联系人结果界面 (4)修改联系人

首先正确输入要修改联系人的基本信息连接数据库查找到此人,在输入要修改联系人的联系方式即可完成修改。

图9修改联系人界面

图10修改联系人信息成功界面 (5)删除联系人

本文来源:https://www.bwwdw.com/article/drxg.html

Top