




全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
VB学习心得一范文 VB学习心得(一)1.精确计时TIMer控件不能做精确计时,只能用于粗略计时,这个在VB关于TIMER的控制介绍中明确说明过的,要实现精确计时用下面代码返回开机以来经历的时间(以毫秒计)Public DeclareFunction GetTickCountLibkernel32AliasGetTickCount()As Long或者返回系统当前时间(精确到毫秒)Public DeclareSub GetSystemTimeLibkernel32AliasGetSystemTime(lpSystemTime AsSYSTEMTIME)Public TypeSYSTEMTIME wYearAs IntegerwMonth As Integer wDayOfWeekAs IntegerwDay As Integer wHourAs IntegerwMinute AsInteger wSecondAsIntegerwMilliseconds AsInteger EndType(秒表)2.初识Winsock附上自己写的一个例子,见VB学习心得(二)UDP协议基础UDP(User DatagramProtocol)是一种无连接协议,与TCP操作不同,计算机间并不需要建立一个连接,同时,一个UDP应用可同时作为应用的客户或服务器方。 由于UDP协议并不需要建立一个明确的连接,因此建立UDP应用要比建立TCP应用简单得多。 在TCP应用中,一个Winsock控制必须明确地设置成“监听”,而其它Winsock控制则必须使用Connect方法来初始一个连接。 使用UDP协议,在两个Winsock控制间进行数据的发送,在连接的两端必须完成以下三步1.设置Rem oteHost属性为其它计算机的名称;2.设置Rem otePort属性为第二个Winsock控制的LocalPort属性的值;3.申请Bind方法。 通过使用方法Bind,则可将该Winsock控制捆绑到一个本地端口,以便该Winsock控制使用该端口来进行类似TCP的“监听”功能,并防止其它应用使用该端口。 使用该协议传送数据,首先设置客户计算机的LocalPort属性。 而作为服务器的计算机仅需要设置Rem oteHost属性为客户计算机的I P地址或域名即可,并将其Rem otePort属性设置成客户计算机上的LocalPort属性即可,然后就可通过申请SendData方法来开始信息发送,客户计算机则可在其DataArrial事件中使用方法GetData来获取发送的信息。 下例具体演示了一个“谈话”应用,以允许相互间进行实时的交谈。 UDP应用一建立一个新标准EXE工程文件,拖放一个Winsock控制到表单上,添加两个文本框到表单上,然后进行以下属性的设置表单(Form):Nam e=“frm PeerA”Caption=“UDP Application (1)”Winsock控制Nam e=“udpPeerA”Protocol=“sckUDPProtocol”文本框1(TextBox):Nam e“txtSend”文本框2(TcxtBox):Nam e=“txtOutput”MultiLineTrue ScrollBars=2然后打开代码窗口,分别在相应的事件下输入以下代码Private SubForm_Load()With udpPeerA.Rem oteHost=“197.1.1.2”?要连接到的计算机名.Rem otePort=1010?要连接到的端口号.LocalPort=1011?该Winsock控制将要使用的本地端口号,便于其它端与该Winsock通讯.Bind1011?将该Winsock控制绑定到该本地端口End WithEnd SubPrivate SubtxtSend_Change()udpPeerA.SendData txtSend.Text?发送文本End SubPrivate SubudpPeerA_DataArrival(ByVal bytesTotalAs Long)Dim strDataAs StringudpPeerA.GetData strData,vbString txtOutput.Text=strData End Sub UDP应用二类似建立UDP Server的方法,在表单上添加一个Winsock控制及两个文本框,然后进行以下属性的设置表单(Form):Nam e=“frm PeerB”Caption=“UDP Application (2)”Winsock控制Nam e=“udpPeerB”Protocol=“sckUDPProtoclool”文本框1(TextBox)Nam e=“txtSend”文本框2(TextBox)Nam e=“txtOutput”MultiLine=True ScrollBars=2然后输入以下代码Private SubForm_Load()With udpPeerB.Rem oteHost=“197.1.1.2”?要连接到计算机的I P地址.Rem otePort=1011?要连接到的端口号.LocalPort=1010?该Winsock控制将使用的本地端口号,便于其它方与之通讯.Bind1010?将该Winsock控制绑定到该本地端口End WithEnd SubPrivate SubtxtSend_Change()udpPeerB.SendData txtSend.Text?发送文本End SubPrivate SubudpPeerB_DataArrival(ByVal bytesTotalAs Long)Dim strDataAs StringudpPeerB.GetData strData,vbString txtOutput.Text=strData End Sub要运行该实例,打开两个Visual Basic的事例,然后分别运行这两个工程文件即可。 若要在不同的机器上运行此两例,只需要将两个工程文件中的Rem oteHost改变成相应的计算机的I P地址或域名即可(以上例子在Visual Basic5.0及PWI N97上通过)。 3.API实现无边框窗体移动Private DeclareFunction SendMessageLibuser32_AliasSendMessageA(ByVal hwndAs Long,_ByVal wMsgAs Long,_ByVal wParamAs Long,_lParam AsAny)As LongPrivate DeclareSub ReleaseCaptureLibuser32()Private ConstWM_NCLBUTTONDOWN=&HA1Private ConstHTCAPTION=2拖动窗体移动窗口,想要拖动其他控件移动窗口,只要在控件的MouseMove事件中加入以下代码即可Private SubForm_MouseMove(Button AsInteger,Shift AsInteger,X AsSingle,Y AsSingle)Dim lngReturnValueAs LongIf Button=1Then CallReleaseCapture lngReturnValue=SendMessage(Me.hwnd,WM_NCLBUTTONDOWN,HTCAPTION,0&)End IfEndSub4.声明过程时让参数可省略Private Subprintx(x AsString,Optional muchAsInteger=1)For i=1To muchPrint xNext iEndSub就会这样5.获取光标位置该函数检取光标的位置,以屏幕坐标表示Private DeclareFunction GetCursorPosLibuser32(lpPoint AsPOINTAPI)As Long使用时要先定义一个数据结构Public TypePOINTAPI xAs Longy As Long EndType例如dim biaoas POINTAPIGetCursorPos biao6.窗体前置声明Private DeclareFunction SetWindowPosLibuser32(ByVal hwndAs Long,ByVal hWndInsertAfterAs Long,ByVal xAs Long,ByVal yAs
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 核酸分子杂交技术解析
- 健康真相馆养生知识培训课件
- 供销社企业知识培训课件
- 重点人入库管理办法
- 铁屑撕碎机管理办法
- 银联卡收单管理办法
- 2025年退役军人职业适应测试题及答案
- 中学科研奖励管理办法
- 企业用电安全培训心得课件
- 企业暑期安全培训课件
- 2025年度中国工商银行河南省分行社会招聘120人备考练习试题及答案解析
- (2025年标准)酒店政府采购协议书
- 2025河北保定市唐县招聘社区工作者64人考试备考试题及答案解析
- 2025年菏泽市中考英语试卷真题(含答案及解析)
- 2025至2030年中国物业管理行业市场发展现状及投资前景展望报告
- 苏教版三年级上册数学全册教学设计(配2025年秋新版教材)
- 《2025基本医疗卫生与健康促进法》知识测试题附答案
- 气动阀基础知识培训课件
- 2025云南昆明巫家坝建设发展有限责任公司招聘23人笔试参考题库附答案解析
- 重庆中医药学院2025年第二季度考核招聘工作人员笔试备考题库带答案详解
- 逐梦飞翔·奋进高二-高二上学期开学第一课主题班会课件
评论
0/150
提交评论