首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

过程声明与同名事件或过程的描述不匹配~请高手帮忙解决啊解决思路

2012-03-28 
过程声明与同名事件或过程的描述不匹配~~~~~~~!!请高手帮忙解决啊Public ClientCount As IntegerPublic so

过程声明与同名事件或过程的描述不匹配~~~~~~~!!请高手帮忙解决啊
Public ClientCount As Integer
Public socketstr As String

Private Sub Command1_Click()
Winsock1(0).LocalPort = Text4.Text
Winsock1(0).Bind
Winsock1(0).Listen
Command1.Enabled = False
Command4.Enabled = True
End Sub

Private Sub Command2_Click()
Text1.Text = ""
End Sub

Private Sub Command3_Click()
Dim sendstr As String
sendstr = Str(Time) + " :" + Text2.Text + Chr$(13) + Chr$(10)


For i = 1 To ClientCount
  If Winsock1(i).State <> sckClosed And i <> Index - 1 Then
  Winsock1(i).SendData sendstr
  End If
Next i
End Sub

Private Sub Command4_Click()
Command1.Enabled = True
Command4.Enabled = False
Winsock1(0).Close
End Sub

Private Sub Form_Load()
Dim tmp As Integer
List1.Clear
tmp = Me.Width / 3
ClinetCount = 0
StatusBar1.Panels(1).Text = ClientCount
Me.Caption = "Server "
Text1.Text = ""
Text2.Text = ""
Text4.Text = "5000"
Text5.Text = Winsock1(0).LocalIP
'Text6.Text = "5000"
Command1.Caption = "Listen"
Command2.Caption = "Clear"
Command3.Caption = "Send Data"
Command4.Caption = "Dislisten"
Command4.Enabled = False
Command3.Enabled = False
StatusBar1.Panels(1).Text = "当前有:" + CStr(ClinetCount) + " 位在线"
StatusBar1.Panels(1).Width = tmp
StatusBar1.Panels(2).Width = tmp
StatusBar1.Panels(3).Width = tmp
End Sub

Private Sub Text1_Change()

End Sub

Private Sub Winsock1_Close(Index As Integer)
  Winsock1(Index).Close
  List1.RemoveItem (Val(Winsock1(Index)))
  ClientCount = ClientCount - 1
  StatusBar1.Panels(1).Text = "当前有:" + CStr(ClientCount) + " 位在线"
  If ClinetCount = 0 Then
  Command4.Enabled = False
  End If
End Sub


Private Sub Winsock1_Connect(Index As Integer)
  Command4.Enabled = True
  StatusBar1.Panels(2).Text = "连接成功,服务器准备就绪"
  StatusBar1.Panels(1).Text = "当前有:" + CStr(ClinetCount) + " 位在线"
  Text2.SetFocus
End Sub

Private Sub Winsock1_ConnectionRequest(Index As Integer, ByVal requestID As Long)
socketstr = CStr(Winsock1(Index).RemoteHostIP) + ":" + CStr(Winsock1(inddex).RemotePort)
For i = 0 To List1.ListCount
  If List1.List(i) = Winsock1(Index).RemoteHostIP Then
  Else
  List1.AddItem socketstr
  End If
Next i
If List1.ListCount <> Index - 1 Then
  List1.AddItem socketstr
End If

ClientCount = ClientCount + 1
Load Winsock1(ClientCount)
Winsock1(ClientCount).LocalPort = 0
Winsock1(ClientCount).Accept requestID
StatusBar1.Panels(1).Text = "当前有:" + CStr(ClientCount) + " 位在线"
Command3.Enabled = True
'Text6.Text = Winsock1(0).RemotePort
End Sub
Private Sub Winsock1_DataArrival(Index As Integer, ByVal bytesTotal As Long)

Dim strData As String

For i = 1 To ClientCount
  If Winsock1(i).State <> sckClosed And i <> Index - 1 Then
  Winsock1(i).GetData strData
  Text1.Text = Text1.Text + strData
  Text1.SelStart = Len(Text1.Text)
  End If
Next i
  'If Winsock1(0).State <> sckClosed Then
  ' Winsock1(0).getData strData
  ' Text1.Text = Text1.Text + strData
  ' Text1.SelStart = Len(Text1.Text)
  'End If
End Sub




提示在这句 Private Sub Winsock1_Close(Index As Integer)


------解决方案--------------------


哪行出错都不肯说,怪不得没人搭理
不尊重别人的人不值得尊重
[解决办法]

探讨
Public ClientCount As Integer
Public socketstr As String

Private Sub Command1_Click()
Winsock1(0).LocalPort = Text4.Text
Winsock1(0).Bind
Winsock1(0).Listen
Command1.Enabled = False
Command4.……

[解决办法]
选择winsock1控件,在右边属性栏中找到index属性,设置值为1

[解决办法]
选择winsock1控件,在右边属性栏中找到index属性,设置值为2
试了下这样也行

热点排行