收藏 分销(赏)

VB毕业设计--《网吧收费系统》.doc

上传人:天**** 文档编号:2107155 上传时间:2024-05-16 格式:DOC 页数:37 大小:490.54KB
下载 相关 举报
VB毕业设计--《网吧收费系统》.doc_第1页
第1页 / 共37页
VB毕业设计--《网吧收费系统》.doc_第2页
第2页 / 共37页
VB毕业设计--《网吧收费系统》.doc_第3页
第3页 / 共37页
VB毕业设计--《网吧收费系统》.doc_第4页
第4页 / 共37页
VB毕业设计--《网吧收费系统》.doc_第5页
第5页 / 共37页
点击查看更多>>
资源描述

1、VB毕业设计-网吧收费系统 作者: 日期:35 个人收集整理 勿做商业用途 题 目: (服务器端)姓 名: 陈 宝 忠系 别: 计算机工程系指导教师: 钟 文 龙重庆电子职业技术学院二八年三月 摘要计算机日益普及的今天,我国网民数量日益增多.其中网吧是网民集中的场所,在利益的驱使下,越来越多的网吧成立.网吧的管理也成了一 个新的问题,一方面是硬件的安装与维修,网络安全的组建。还有一方面就是网吧收费。网吧这样的公众场所,人员流动性大,不可能完全靠人力 去解决,而且管理者和工作人员之间也要有帐目的清算. 而且为了节约成本,网吧的工作人员也不会有太多,如何达到这样的目的,信息化的时代还是 要靠科技.

2、面对这样的现实,一款应用软件就能把这些问题解决,软件该怎么做,需要什么功能我们自然不能靠简单的理论分析,有机会 还是要到实际的生活中去了解,只有这样才能保证做 出的系统有较高的使用价值.在开发图书管理的过程,在实际调查后确定开发流程,基本功能设计,文档研究方案。 现在网吧不单是靠提供计算机给网民上网服务,还加有商品的销售,商品销售如果只是靠人员来记录消费情况,会提高出错的概率,而且在人员换班的时候 帐目清算是件很麻烦的事情。 如果把商品 的销售也加进这个系统中,工作人员只是输入商品的编号,帐目就有系统自动结算还要考虑到系统实际运行执行代码的效率,功能模块很多的时候,运行速度就成了新的问题,如何

3、解决,让起流畅运行呢?数据库安全的问题,计算机毕竟只是机器而已,受外界环境影响很大,所以也要考虑备份数据库这次开发只是开发了收费系统的服务器端,还要开发出对应的客户端与服务器连接起来才可以正常使用.问题的提出:讲清所研究的问题“是什么”。 选题背景及意义:讲清为什么选择这个题目来研究,即阐述该研究对学科发展的贡献、对国计民生的理论与现实意义等.文献综述:对本研究主题范围内的文献进行详尽的综合述评,“述”的同时一定要有“评”,指出现有研究成果的不足,讲出自己的改进思路。 研究方法:讲清论文所使用的科学研究方法。 目录1.前言2。 需求分析2。1 用户定位分析2.2 功能需求分析2.3 性能需求分

4、析3.系统分析3。1 环境平台分析3。2 程序功能设计3.3 程序流程设计4. 详细设计4.1 程序单元设计4。2 程序单元编码4.3 集成开发5. 系统实现5。1 系统模块一6 结论与展望参考文献前言根据自己的爱好和软件编程的能力,我选择用VB编写网吧收费系统的服务器端,只是编写出了基本的功能,比现实生活中使用的要粗略。但是这个系统只是自己的一次实践,我会在以后的学习中继续努力的 编写这个应用程序其意义在于锻炼了我的动手能力和逻辑思维能力,而且以前也从来没有尝试过编写这样综合性的程序,培养了对问题考虑的全面性. 为了编写有实用价值的东西,我还参阅了大量的资料,包括网络资料的选择,当然在程序完

5、成只后,也不能只有编写者才会用,所以要写出对应的帮助文挡,一般的软件都会有,这是我们生活中的常识。 只是限于水平 ,只能编写部分功能,数据库安全方面也不可靠.一直在寻找解决办法,如果能够采用动态数据库,这些问题就能解决了. 科学这东西讲究的就是严谨的态度,建立数学模型有助于完成设计,在设计的时候避免出现思绪混乱, 在经过系统功能需求分析,在大脑中 已经有很清晰的的目标,可以画出要进行的流程图,比如先根据功能模块确定好选择数据库,然后根据实际编写数据库表,完成数据库表的关联,可以先保存后,等窗体确定完毕,再连接数据库。 经过代码调试,确定能正常运行。2. 需求分析2。1用户定位分析合理的工具设置

6、:用户要求界面简洁 容易操作。于是可以使用工具条进行设置,把经常要使用的功能用工具条单独罗列出来,比直接在菜单中选择效率要高.2.安全要求:为了避免意外事件或者是人为原因导致数据库信息丢失,要做好数据库的保秘和数据库灾难性恢复.3。简单的操作方式:因为需要有的时候需要对客户机进行远程控制,这样管理起来就轻松起来 。4。提供全面的数据查询和统计:可以任意选择查询条件,而且为了方便可以设置统计报表功能。5。报表打印导出功能:要随时可以导出以报表格式存放,打印出来长期备份。6。会员卡管理:会员卡较之现金交易比较方便管理,7。商品管理:能够对商品进行销售统计,存储查询。8。网址限制:现在网络病毒流行,

7、尤其要注意一些不良网页上隐藏病毒,所以要限制一些网站.2功能需求分析主要功能: 对网吧的人员,资源进行管理。公布网吧的通知公告等信息,发布网吧内外新闻动态,提供上网人员的意见、建议反馈场所,管理网吧内的计算机,对上机用户的情况进行统计,计时计费等。具体功能:被控制机有一个服务器,控制器集中在管理机上.可以控制登陆,并进行计时,这是两个基本功能;管理机还有上机,下机结帐,开机,关机,重新启动等功能. 网络管理、计费系统:本网站最重要和最复杂的功能。又分会员注册,登录,以及会员的审核系统,员工的管理,计时计费,计算机管理等小系统。资源管理:分为流行歌曲,影视频道,游戏推荐,动漫Flash,精彩图片

8、几个模块.交流平台: 提供在线交流的平台,收集上网人员的相关的意见和建议,并及时处理,对有必要的问题进行回复。以上功能大部份为系统已实现的基本功能,在开发本系统时也为后继系统扩展开发留有接口,使系统更加方便地可以进行升级和扩展。.3性能需求分析强大的安全保障:网络通讯全面采用数字证书认证体系,具有与网上银行同等的安全级别;基于角色的权限管理允许灵活定制管理权限;具有完备的数据保密、备份、灾难恢复等机制,保证数据高度安全可靠。 严谨与高效的业务流程设计:网吧计费管理系统业务数据遵循财务准则设计,严谨、规范;众多独到的设计不仅方便顾客使用也大大减轻了服务员的工作强度。 易于使用与维护:网吧计费管理

9、系统充分考虑了不同层次使用者的接受能力,服务员经过10分钟简单培训就能掌握,管理人员则拥有众多工具和方法用于简化管理与维护。此外,为了帮助用户尽快熟练掌握网吧计费管理系统的应用,相关软件公司还提供了多种方式的培训和技术支持. 集中管理能力:将配置、升级等任务集中到服务器处理,使管理工作大量减少,变得高效。 系统分析3.1系统平台分析系统的开发、运行、测试环境均选用 Windows 系列的操作系统,因为 Windows 系统是PC机上普及最广泛的操作系统,它的界面友好、有高效的计算环境、对硬件的支持程度高、支持OnNow设备、有良好的可移植性和可伸缩性、系统运行稳定、可靠性好、维护方便、容易安装

10、;性能经过优化、安全性好、对网络的支持程度好、使网络应用更为方便快捷。本系统可运行于Windows 20000以上操作系统,在这些操作系统上都必须安装IIS,当然最好是在Windows 2000 Advanced Server 上运行,因为微软开发的Windows 2000 Advanced Server是专门用来提供网络服务器的,有微软这个强大的技术支持,并且系统运行稳定、维护方便、性能经过优化、对网络的支持程度好、使网络应用更为方便快捷。考虑到Windows XP Professional是我们平时用得最多的操作系统,比较熟悉,且足够支持开发软件VB和Microsoft SQL Serve

11、r 2000。所以在此我选用了它作为开发环境、运行环境以及测试环境.在选择开发工具的时候,考虑到各种编程软件,我选择VB6。0主要 有其特点决定的,VB 6。0提供了各种丰富的通信接口,比较适合这种服务器-客户端。 在界面设置上,VB 提供可视化编程,可以避免大量的代码编写,需要什么样子的窗口布局,可以直接在工具箱里面选择,然后调整布局。采用的是事件驱动方式,代码执行的过程可以直接控制,很方便代码的调试和改写。比起传统的那些编程语言,代码从开始执行到代码结涑 3.2程序功能设计() 系统功能设计:这一部分是整个系统最基本也是最重要的设置,其中系统设置至少包括以下几方面的内容:计算机设置:管理员

12、设置数据备份数据还原系统设置() 记费用功能设计:包括下面内容开始记费限定时间结帐调换计算机选购计算机客户机控制() 界面设置功能:主要是对运行中的系统界面设置,不同的工作人员喜欢不同的背景或布局格式,对整个系统没有太大的影响() 管理功能:包括商品资料管理,客户管理,会员卡管理() 统计功能:日报表统计:商品统计和上机统计月报表统计:商品统计和上机统计3.3程序流程设计 数据库设计(采用无源数据库连接)无源数据库”连接也并不是说不需要数据源,如果没有数据源则连接是纸上谈兵,只是不需要配置ODBC数据源,利用ADO就可通过代码进行连接。1.1 ADO(ActiveX Data Object)在

13、Visual Basic6.0中,数据访问接口有三种:ActiveX数据对象(ADO)、远程数据对象(RDO)和数据访问对象(DAO)。这三种接口的每一种都分别代表该技术的不同发展阶段,最新的是ADO,它比RDO和DAO更加简单,更加灵活.对于新工程,应使用ADO作为数据访问接口。ADO 是Microsoft 数据库应用程序开发的接口,是建立在OLE DB之上的高层数据库访问技术.它封装了OLE DB所提供的接口,比起OLE DB提供者,ADO的接口可以使程序员在更高级别上进行数据交互。ADO技术不仅可以应用于关系数据库,也可以应用于非关系数据库。可以用统一的方法对不同的文件系统进行访问,大大

14、简化了程序编制,增加了程序的可移植性。1.2 建立无源数据库连接在连接数据库前,首先要在Visual Basic 6。0菜单中“工程”“引用中选择Microsoft ActiveX Data Objects 2。6 Library 和Microsoft ActiveX Data Objects Recordset 2。6 Library这两个组件。运用ADO对象模型的主要元素:Connection(连接)中的ConnectionString属性进行连接, ConnectionString为可读写string类型,指定一个连接字符串,告诉ADO 如何连接数据库。实例:以建立登陆系统为例,介绍无源

15、数据库连接。在Microsoft SQL Server 2000 中建立一个Student 的数据库,在Student数据库中建立login_user(name,password)的数据表,Microsoft SQL Server服务器的名为data_server。代码如下:Option ExplicitPublic LoginSucceeded As Boolean引用Microsoft ActiveX Data Objects 2。6 Library定义连接对象和记录集Dim conn As ADODB.ConnectionDim rs As ADODB.Recordset对取消按钮单击事

16、件的响应Private Sub cmdCancel_Click()设置全局变量为 false不提示失败的登录LoginSucceeded = FalseMe。HideEnd Sub对登录按钮单击事件的响应Private Sub cmdOK_Click()Set conn = New ADODB。Connection Set rs = New ADODB.Recordset建立无源数据库连接conn。ConnectionString=”driver=sql server;server=data_server;uid=sa;pwd=;Database=studentconn.ConnectionT

17、imeout = 50conn。OpenDim str As String连接连接对象Set rs.ActiveConnection = conn设置游标类型rs。CursorType = adOpenDynamicIf Trim(txtUserName.Text = ”) ThenMsgBox ”用户名不能为空,请重新输入用户名!”, vbOKOnly + vbExclamation, ”警告”txtUserName.SetFocusElse设置查询字符串str = select * from login_user where name =” Trim(txtUserName。Text) r

18、s。Open strIf rs。EOF = True ThenMsgBox 没有这个用户,请重新输入用户名!, vbOKOnly + vbExclamation, 警告txtUserName。SetFocusElse登录成功,连接主窗口If (Trim(txtPassword.Text) = Trim(rs。Fields(password”))) ThenLoginSucceeded = TrueMe.Hidemain.ShowElseMsgBox ”密码不正确,请重输入密码!, , ”警告txtPassword。SetFocusSendKeys ”Home+End”End IfEnd IfE

19、nd IfEnd Sub无源数据库连接则不用配置ODBC环境,可以省去手工设置DSN的麻烦,这种方法所编写的软件适应性广,又符合专业软件的要求。DO封装并且实现了Microsoft强大的数据访问接口OLE DB的所有功能,它具有通用性好,效率高的特点。通过ADO进行无源数据库连接,省去手工设置DSN的麻烦,使ADO对象模型获得更大的灵活性。 界面设置确定 应用程序的功能后,从最基本的界面布局设置,这一步的关键就是熟悉VB控件的基本功能,包括常用控件和其它需要从部件里面添加的控件。界面设置要合理,美观为好。 代码编辑VB 采用的是事件驱动方式,可以直接选择控件的事件和属性,在编写代码的时候会自动

20、给予提示,这样当对一个事件进行代码编辑的时候如果没有给予格式提醒,这个时候要考虑是不是出错了,如果没有这种功能,这种错误只能到代码编译运行的时候才会发现,那个时候会浪费很多时间来修改错误代码。 模块建立模块一般是放全局公用的函数、过程、常数、自定义结构、全局变量等等东西的地方,也就是公用部分的集中场所。当然,模块中也可以定义private 的函数或者过程以便公用过程的内部调用。类模块是定义一个类,类模块中的所有public成员必须在创建了累的实例以后才能够调用,需要和标准模块区分开来.好的编程习惯是把不同种类的功用模块分类放在不同的标准模块中,便于查阅,所以很多程序中会有多个标准模块存在.类模

21、块和标准模块的不同点在于存储数据方法的不同。标准模块的数据只有一个备份。这意味着标准模块中一个公共变量的值改变以后,在后面的程序中再读取该变量时,它将得到同一个值。 而类模块的数据,是相对于类实例(也就是,由类创建的每一对象)而独立存在的。 同样的,标准模块中的数据在程序作用域内存在,也就是说,它存在于程序的存活期中;而类实例中的数据只存在于对象的存活期,它随对象的创建而创建,随对象的撤消而消失。 最后,当变量在标准模块中声明为 Public 时,则它在工程中任何地方都是可见的;而类模块中的 Public 变量,只有当对象变量含有对某一类实例的引用时才能访问 运行调试1运行程序 运行程序,可用

22、下列方法之一: (1)选择主窗口的“运行”菜单的“启动命令。 (2)按快捷键F5。 (3)选择工具栏上的启动按钮。 在程序运行过程中,标题栏显示: 工程1Microsoft Visual Basic运行 表示进入运行状态. 2暂停运行 若程序有错误,可用以下任一种方式进入中断状态,对程序进行调试: (1)选择“运行菜单的“中断命令. (2)按Ctrl+Break键. (3)选择工具栏上的中断图标。 进人中断状态,标题栏显示: 工程1-Microsoft Visual Basicbreak 若要继续运行,可直接按F5键,或选取“运行”菜单的“继续命令。若要重新运行,按 Shift+F5键或选择“

23、运行”菜单的“重新启动”命令。 3结束程序运行 结束程序运行返回设计状态的方法为: (1)选择“运行菜单的“结束”命令。 (2)选择工具栏上的结束图标。 (3)按程序的结束按钮或程序窗口的关闭按钮4. 详细设计4。1程序单元设计 登陆窗口设计:登陆系统窗口界面要简单为好,需要两个标签框用来标明用户名和密码,两个文本框用来输入用户名和密码,还有两个命令按扭用来实现登入和取消命令:根据需要添加ACTIVE XActiveX控件数据输入和函数功能执行都必须通过容器,因此ActiveX控件和容器都必须支持一些特定的接口协议。根据Microsoft 相应的规格标准,ActiveX控件应具备如下的性能机制

24、。 属性和方法:ActiveX控件必须提供属性的名称、方法的名称及参数,通过这项机制容器可以存取和改变ActiveX控件的属性参数. 事件:ActiveX控件由这项机制通知容器在ActiveX控件中发生的事件,比如属性参数的改变,用户按下鼠标左键等. 存储:容器由这项机制通知ActiveX控件存储和提取有关信息数据等。 ActiveX控件只要在Windows的Registry数据库中注册后,就可以像其他Windows应用程序一样发挥各自的功能。 ActiveX控件是一个模块化的灵活对象,如果某个应用程序或网页需要增加一项特殊的功能,无须重写整个程序,只要灵活地插入一个具有此项功能的Active

25、X控件即可实现。ActiveX的优势还在于它的动态可交互性,用户可以动态地在使用过程中,通过改变它的属性和参数,在应用程序中实现自己的特殊要求。 也许有的读者会问:目前在市面上可以找到各种各样现成的ActiveX控件,还有没有必要自己创建ActiveX控件呢?关于这个问题很容易解释,现有的控件种类是很多,功能也比较齐全,问题是有许多时候会遇到这种情况:使用现成的控件虽能完成任务,但自己需要的一些特性(属性、事件或方法)该控件却没有提供,还需要自己手工写代码来实现,而这些特 性偏偏在自己的应用系统中又经常会用到,为了避免大量的重复劳动,一劳永逸的办法就是在创建自己的ActiveX控件。 目前可以

26、使用Visual Basic或其它开发工具创建 ActiveX控件。无论按照哪种标准,Visual Basic都是计算机历史上最为成功的(同时也是最流行的)编程语言,其中最令人兴奋的特性就是可以创建用户自己的控件并可以像其他控件一样应用于支持 ActiveX控件技术的应用程序中。下面通过一个具体实例来阐述如何在Visual Basic 6。0(中文企业版)下进行 ActiveX控件创建。 本文为互联网收集,请勿用作商业用途文档为个人收集整理,来源于网络设计完成效果图主界面设计 4.2.程序单元编码 登陆窗口代码:rivate Sub cmdOK_Click() 检查正确的密码 With frm

27、Main.Data8.Recordset .MoveFirst For i = 1 To 。RecordCount If Combo1.Text = 。Fields(用户名称”) And txtPassword = 。Fields(用户密码) Then LoginSucceeded = True UserName = .Fields(”用户名称”) UserPass = 。Fields(”权限) Exit For End If 。MoveNext Next i If LoginSucceeded Then 将代码放在这里传递 成功到 calling 函数 设置全局变量时最容易的 Unload

28、Me Else MsgBox 无效的密码,请重试!”, , ”登录” txtPassword。SetFocus SendKeys Home+End End If End WithEnd SubPrivate Sub Form_Load()On Error Resume NextWith frmMain。Data8.Recordset.MoveFirstFor i = 1 To 。RecordCount Combo1.AddItem 。Fields(”用户名称) Combo1.ItemData(Combo1.NewIndex) = .AbsolutePosition 。MoveNextNext

29、iEnd With 管理员模块代码Dim aa As LongPrivate Sub Combo1_Click()Command4。Enabled = TrueEnd SubPrivate Sub Command1_Click()添加用户On Error Resume NextIf Command1.Caption = 添加用户 Then ListView1.Visible = False Frame1。Visible = True Text1。Text = ” Text2.Text = ” Text3.Text = ” Text4.Text = Combo1。Text = Combo1.Li

30、st(0) Command2。Enabled = False Command3。Enabled = False Command4.Enabled = True Command1.Caption = ”放弃添加” Else ListView1.Visible = True Frame1。Visible = False Command2。Enabled = True Command3.Enabled = True Command4.Enabled = False Command1.Caption = ”添加用户”End IfEnd SubPrivate Sub Command2_Click()编辑

31、用户On Error Resume NextWith frmMain.Data8.Recordset Text1.Text = .Fields(用户名称”) Select Case .Fields(权限”) Case A Combo1.Text = Combo1.List(0) Text2.PasswordChar = ” Text3。PasswordChar = ” Text4。PasswordChar = ” Text2.Text = 。Fields(用户密码”) Text3。Text = 。Fields(用户密码”) Text4。Text = .Fields(用户密码”) Case B

32、Combo1。Text = Combo1。List(1) Text2。PasswordChar = ” Text3。PasswordChar = ” Text4.PasswordChar = ” Text2.Text = 。Fields(用户密码”) Text3.Text = .Fields(”用户密码) Text4.Text = 。Fields(用户密码”) Case ”C Combo1.Text = Combo1.List(2) Text2.PasswordChar = ” Text3.PasswordChar = ” Text4.PasswordChar = Text2。Text = .

33、Fields(用户密码) Text3.Text = .Fields(用户密码) Text4.Text = 。Fields(用户密码”) Case D Text2.PasswordChar = ” Text3.PasswordChar = ” Text4。PasswordChar = ” Text2。Text = ” Text3.Text = ” Text4。Text = Combo1.Text = Combo1.List(3) End SelectEnd WithIf Command2。Caption = 修改用户” Then ListView1.Visible = False Frame1。

34、Visible = True Command1.Enabled = False Command3。Enabled = False Command4.Enabled = False Command2。Caption = 放弃修改” Else ListView1.Visible = True Frame1.Visible = False Command1.Enabled = True Command3.Enabled = True Command4.Enabled = False Command2。Caption = 修改用户End IfEnd SubPrivate Sub Command3_Cl

35、ick()删除用户On Error Resume NextWith frmMain。Data8.RecordsetIf MsgBox(确实要删除用户:” 。Fields(”用户名称”) ” 吗?, vbYesNo + vbQuestion) = vbYes ThenIf Err 0 Then Exit SubIf .Fields(权限”) = ”D Then mm = InputBox(请输入密码:) If mm = 。Fields(”用户密码) And 。Fields(用户名称) UserName Then .Delete ListView1.ListItems.Clear Form_Loa

36、d Else MsgBox 不能删除用户!”, vbCritical End If Else .Delete ListView1。ListItems。Clear Form_Load End IfEnd IfEnd WithEnd SubPrivate Sub Command4_Click()保存设置On Error Resume NextIf Trim(Text1.Text) = ” Then MsgBox 用户名错误!, vbCritical Text1.SetFocusExit SubEnd IfWith frmMain。Data8。RecordsetIf Text3.Text Text4

37、。Text ThenMsgBox ”前后密码设置不一至,请重新输入!, vbCriticalText3.Text = ”Text4.Text = ”Text3.SetFocusExit SubEnd Ifaa = .AbsolutePosition.MoveFirstFor i = 1 To 。RecordCountIf 。Fields(”用户名称”) = Text1。Text Then If 。AbsolutePosition aa Then MsgBox ”用户名已经存在了,请你再换一个!, vbExclamation 。MoveFirst .Move aa Text1.SetFocus

38、Text1。SelStart = 0 Text1。SelLength = Len(Text1。Text) Exit Sub End IfEnd If.MoveNextNext i.MoveFirst.Move aaIf Command1.Caption = 放弃添加” Then .AddNew Else If Text2.Text 。Fields(用户密码”) Then MsgBox 密码错误,请重新输入!, vbCritical Text2.Text = ” Text3.Text = ” Text4.Text = Text2。SetFocus Exit Sub End If .EditEnd

39、 If 。Fields(”用户名称”) = Text1。Text 。Fields(”用户密码) = Text3.Text .Fields(”权限) = Left(Combo1。Text, 1) .UpdateEnd WithIf Err 0 Then MsgBox Error: Exit Sub ListView1.Visible = True Frame1。Visible = False Command1.Enabled = True Command2。Enabled = True Command3。Enabled = True Command4.Enabled = False Comman

40、d1.Caption = ”添加用户 Command2。Caption = ”修改用户” ListView1。ListItems。Clear Form_Load End SubPrivate Sub Command5_Click()Unload MeEnd SubPrivate Sub Form_Load()On Error Resume NextWith frmMain。Data8。Recordsetaa = .AbsolutePosition。MoveFirstFor i = 1 To 。RecordCount ListView1。ListItems。Add i, , .Fields(”用

41、户名称”) ListView1。ListItems(i)。SubItems(1) = 。Fields(”用户密码”) ListView1.ListItems(i)。SubItems(1) = ”*” Select Case .Fields(”权限”) Case ”A ListView1.ListItems(i)。SubItems(2) = ”A记费员 Case B ListView1。ListItems(i)。SubItems(2) = ”B操作员 Case C ListView1。ListItems(i)。SubItems(2) = ”C-管理员” Case D ListView1。List

42、Items(i).SubItems(2) = ”D-超级管理员 End Select。MoveNextNext i。MoveFirst.Move aaEnd WithEnd SubPrivate Sub Form_Resize()On Error Resume NextListView1。Move 30, 10, Me。Width 150, Me.Height - 1200Picture1.Top = ListView1。Top + ListView1.Height + 100Picture1.Left = (Me。Width - Picture1。Width) / 2End SubPriva

43、te Sub Label5_Click()End SubPrivate Sub ListView1_ItemClick(ByVal Item As MSComctlLib。ListItem)On Error Resume NextWith frmMain。Data8.Recordset .MoveFirst .Move Item。Index - 1End WithEnd SubPrivate Sub Text1_Change()Command4。Enabled = TrueEnd SubPrivate Sub Text2_Change()Command4.Enabled = TrueEnd SubPriva

展开阅读全文
收益排行: 01、路***(¥15400+),
02、曲****(¥15300+),
03、wei****016(¥13200+),
04、大***流(¥12600+),
05、Fis****915(¥4200+),
06、h****i(¥4100+),
07、Q**(¥3400+),
08、自******点(¥2400+),
09、h*****x(¥1400+),
10、c****e(¥1100+),
11、be*****ha(¥800+),
12、13********8(¥800+)。
相似文档                                   自信AI助手自信AI助手
百度文库年卡

猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 学术论文 > 毕业论文/毕业设计

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服