home *** CD-ROM | disk | FTP | other *** search
/ Planet Source Code Jumbo …e CD Visual Basic 1 to 7 / 1_2002.ISO / Data / Zips / CODE_UPLOAD14609262001.psc / Chat.frm (.txt) < prev    next >
Encoding:
Visual Basic Form  |  2001-02-05  |  11.7 KB  |  353 lines

  1. VERSION 5.00
  2. Object = "{3B7C8863-D78F-101B-B9B5-04021C009402}#1.2#0"; "RICHTX32.OCX"
  3. Begin VB.Form chat 
  4.    BackColor       =   &H8000000A&
  5.    BorderStyle     =   1  'Fixed Single
  6.    Caption         =   "Network Chat coded by Navarchy"
  7.    ClientHeight    =   3240
  8.    ClientLeft      =   45
  9.    ClientTop       =   330
  10.    ClientWidth     =   5880
  11.    Icon            =   "Chat.frx":0000
  12.    LinkTopic       =   "Form1"
  13.    MaxButton       =   0   'False
  14.    MinButton       =   0   'False
  15.    ScaleHeight     =   3240
  16.    ScaleWidth      =   5880
  17.    ShowInTaskbar   =   0   'False
  18.    StartUpPosition =   3  'Windows Default
  19.    Begin VB.TextBox NewText 
  20.       Height          =   375
  21.       Left            =   120
  22.       TabIndex        =   3
  23.       Top             =   2760
  24.       Width           =   3855
  25.    End
  26.    Begin VB.Timer weednames 
  27.       Left            =   2400
  28.       Top             =   1680
  29.    End
  30.    Begin VB.Timer myupdate 
  31.       Left            =   1440
  32.       Top             =   1320
  33.    End
  34.    Begin VB.Timer newstuff 
  35.       Left            =   240
  36.       Top             =   960
  37.    End
  38.    Begin VB.Timer backupdate 
  39.       Left            =   120
  40.       Top             =   1680
  41.    End
  42.    Begin VB.CommandButton Command1 
  43.       Caption         =   "send"
  44.       Default         =   -1  'True
  45.       Height          =   195
  46.       Left            =   4560
  47.       TabIndex        =   0
  48.       Top             =   9990
  49.       Width           =   855
  50.    End
  51.    Begin VB.ListBox lstNames 
  52.       Height          =   2205
  53.       Left            =   4080
  54.       TabIndex        =   1
  55.       Top             =   360
  56.       Width           =   1695
  57.    End
  58.    Begin RichTextLib.RichTextBox chatbox 
  59.       Height          =   2295
  60.       Left            =   120
  61.       TabIndex        =   5
  62.       Top             =   360
  63.       Width           =   3855
  64.       _ExtentX        =   6800
  65.       _ExtentY        =   4048
  66.       _Version        =   393217
  67.       ReadOnly        =   -1  'True
  68.       ScrollBars      =   2
  69.       TextRTF         =   $"Chat.frx":0ECA
  70.    End
  71.    Begin VB.Label Label2 
  72.       Alignment       =   2  'Center
  73.       BackStyle       =   0  'Transparent
  74.       BeginProperty Font 
  75.          Name            =   "MS Sans Serif"
  76.          Size            =   12
  77.          Charset         =   0
  78.          Weight          =   700
  79.          Underline       =   0   'False
  80.          Italic          =   0   'False
  81.          Strikethrough   =   0   'False
  82.       EndProperty
  83.       ForeColor       =   &H00FF0000&
  84.       Height          =   255
  85.       Left            =   0
  86.       TabIndex        =   4
  87.       Top             =   0
  88.       Width           =   5895
  89.    End
  90.    Begin VB.Label Label1 
  91.       BackStyle       =   0  'Transparent
  92.       Caption         =   "Send"
  93.       BeginProperty Font 
  94.          Name            =   "MS Sans Serif"
  95.          Size            =   8.25
  96.          Charset         =   0
  97.          Weight          =   700
  98.          Underline       =   0   'False
  99.          Italic          =   0   'False
  100.          Strikethrough   =   0   'False
  101.       EndProperty
  102.       ForeColor       =   &H00FF0000&
  103.       Height          =   255
  104.       Left            =   4680
  105.       TabIndex        =   2
  106.       Top             =   2850
  107.       Width           =   450
  108.    End
  109.    Begin VB.Image imgsend 
  110.       Height          =   300
  111.       Index           =   0
  112.       Left            =   4245
  113.       Picture         =   "Chat.frx":0F78
  114.       Top             =   2805
  115.       Width           =   1425
  116.    End
  117.    Begin VB.Image imgsend 
  118.       Height          =   300
  119.       Index           =   1
  120.       Left            =   4245
  121.       Picture         =   "Chat.frx":171A
  122.       Top             =   2805
  123.       Width           =   1425
  124.    End
  125. Attribute VB_Name = "chat"
  126. Attribute VB_GlobalNameSpace = False
  127. Attribute VB_Creatable = False
  128. Attribute VB_PredeclaredId = True
  129. Attribute VB_Exposed = False
  130. Dim oldback, oldtcolor, oldgrad, oldcol As Integer
  131. Dim num As Integer
  132. Dim mynumber As Integer
  133. Dim myroom As String
  134. Dim onornot As Boolean
  135. Public Sub send()
  136.     On Error Resume Next
  137.       Open thefullpath & "data\room" & myroom & ".num" For Input As #1
  138.       Line Input #1, newnum
  139.       Close #1
  140.       Open thefullpath & "data\room" & myroom For Append As #2
  141.       Print #2, person & ": " & NewText.Text
  142.       NewText.Text = ""
  143.       Close #2
  144.       If newnum > 500 Then
  145.           newnum = newnum - 500
  146.           Open thefullpath & "data\room" & myroom For Input As #3
  147.           Open "room" & myroom For Output As #4
  148.           Do While asf < 500
  149.               Line Input #3, asdf
  150.               asf = asf + 1
  151.           Loop
  152.           Do Until EOF(3)
  153.               Line Input #1, asdf
  154.               Print #4, asdf
  155.           Loop
  156.           Close #3
  157.           Close #4
  158.           FileCopy "room" & myroom, thefullpath & "data\room" & myroom
  159.           Kill "room" & myroom
  160.       End If
  161.       Open thefullpath & "data\room" & myroom & ".num" For Output As #5
  162.       Print #5, newnum + 1
  163.       Close #5
  164. End Sub
  165. Private Sub backupdate_Timer()
  166.     On Error Resume Next
  167.       If sweety = True Then Exit Sub
  168.       If oldback <> background Then
  169.           Call backgroundupdate(Me)
  170.       End If
  171.       oldback = background
  172.       If background = 0 Then
  173.           If oldgrad <> mgradient Or oldcol <> mcolor Then Call GradientFill(Me)
  174.           oldgrad = mgradient
  175.           oldcol = mcolor
  176.       End If
  177.       If tColor <> oldtcolor Then
  178.           If background = 2 Then Call makegray(Me, tColor)
  179.       End If
  180.       oldtcolor = tColor
  181. End Sub
  182. Private Sub Command1_Click()
  183.     On Error Resume Next
  184.       Call send
  185.       imgsend(0).Visible = False
  186.       c = Timer
  187.       Do While Timer < c + 0.5
  188.           DoEvents
  189.       Loop
  190.       imgsend(0).Visible = True
  191. End Sub
  192. Private Sub Form_Load()
  193.     On Error Resume Next
  194.       myroom = room
  195.       If Dir$(thefullpath & "data\person" & myroom & person) = "" Then
  196.           Open thefullpath & "data\person" & myroom & person For Output As #6
  197.           Print #6, 0
  198.           Close #6
  199.       End If
  200.       Me.ScaleMode = 3
  201.       Me.AutoRedraw = True
  202.       mynumber = chatnumber
  203.       Label2.Caption = "Welcome to " & myroom
  204.       Open thefullpath & "data\room" & myroom & ".num" For Input As #7
  205.       Line Input #7, a
  206.       If IsNumeric(a) = True Then num = a
  207.       Close #7
  208.       newname = Dir$(thefullpath & "data\person" & myroom & "*")
  209.       Do While newname <> ""
  210.           'MsgBox Right$(newname, Len(newname) - Len("person" & myroom))
  211.           lstNames.AddItem Right$(newname, Len(newname) - Len("person" & myroom))
  212.           newname = Dir$()
  213.       Loop
  214.       backupdate.Interval = 100
  215.       myupdate.Interval = 50
  216.       newstuff.Interval = 100
  217.       weednames.Interval = 150
  218. End Sub
  219. Private Sub Form_LostFocus()
  220.     Call backgroundupdate(Me)
  221. End Sub
  222. Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
  223.     Call boom
  224. End Sub
  225. Public Sub boom()
  226.     On Error Resume Next
  227.       chatroom(mynumber) = ""
  228.       chatcount(mynumber) = False
  229.       Kill "person" & myroom & person
  230. End Sub
  231. Private Sub imgsend_MouseDown(Index As Integer, Button As Integer, Shift As Integer, X As Single, Y As Single)
  232.     imgsend(0).Visible = False
  233. End Sub
  234. Private Sub imgsend_MouseUp(Index As Integer, Button As Integer, Shift As Integer, X As Single, Y As Single)
  235.     imgsend(0).Visible = True
  236.     Call send
  237. End Sub
  238. Private Sub Label1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
  239.     imgsend(0).Visible = False
  240. End Sub
  241. Private Sub Label1_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
  242.     imgsend(0).Visible = True
  243.     Call send
  244. End Sub
  245. Private Sub myupdate_Timer()
  246.     If closedforgood = True Then
  247.         myupdate.Interval = 0
  248.         weednames.Interval = 0
  249.         newstuff.Interval = 0
  250.         backupdate.Interval = 0
  251.         Exit Sub
  252.     End If
  253.     If chatcount(mynumber) = False Then Exit Sub
  254.     If Dir$(thefullpath & "data\kill" & myroom) <> "" Then
  255.     Kill thefullpath & "data\person" & myroom & person
  256.     Unload Me
  257.     Exit Sub
  258.     End If
  259.     If onornot = False Then
  260.         NewText.SetFocus
  261.         onornot = True
  262.     End If
  263.     On Error GoTo makenew
  264.     If myroom = "" Then Exit Sub
  265.     Open thefullpath & "data\person" & myroom & person For Input As #8
  266.     Line Input #8, oldnum
  267.     On Error Resume Next
  268.       Close #8
  269.       If oldnum > 9999 Then oldnum = -9999
  270.       Open thefullpath & "data\person" & myroom & person For Output As #9
  271.       Print #9, oldnum + 1
  272.       Close #9
  273. Exit Sub
  274. makenew:
  275.       Close #8
  276.       Open thefullpath & "data\person" & myroom & person For Output As #10
  277.       Print #10, 0
  278.       Close #10
  279. End Sub
  280. Private Sub newstuff_Timer()
  281.     On Error Resume Next
  282.       Open thefullpath & "data\room" & myroom & ".num" For Input As #11
  283.       Line Input #11, newnum
  284.       Close #11
  285.       If num > newnum Then
  286.           num = num - 500
  287.       End If
  288.       If newnum > num Then
  289.           Open thefullpath & "data\room" & myroom For Input As #12
  290.           Do While xt < num
  291.               Line Input #12, a
  292.               xt = xt + 1
  293.           Loop
  294.           Do While newnum > num
  295.               Line Input #12, newline
  296.               LockWindowUpdate Me.hWnd
  297.               chatlen = Len(chatbox.Text)
  298.               'ChatBox.Text = ChatBox.Text & vbCrLf & newline
  299.               Where = InStr(newline, ":")   ' Find string in text.
  300.               If Where Then   ' If found,
  301.                   chatbox.SelStart = chatlen + 2   ' set selection start and
  302.                   If Left$(newline, Len(person) + 1) = person & ":" Then
  303.                       chatbox.SelColor = vbRed
  304.                     Else
  305.                       chatbox.SelColor = vbBlue
  306.                   End If
  307.                   'evan1 = Mid$(newline, InStr(newline, ":"), Len(newline))
  308.                   'evan2 = Mid$(newline, InStr(newline, ":") + 1, Len(newline))
  309.                   'evan3 = Replace$(newline, evan1, "")
  310.                   chatbox.SelBold = True
  311.                   chatbox.SelText = Left$(newline, Where + 1)   'evan3 & ":"
  312.                   chatbox.SelBold = False
  313.                   chatbox.SelColor = vbBlack
  314.                   chatbox.SelText = Right$(newline, Len(newline) - Where - 1) & vbCrLf  'evan2 & vbCrLf
  315.                   chatbox.SelStart = 0
  316.                   chatbox.SelLength = 0
  317.                 Else
  318.                   chatbox.Text = chatbox.Text & newline & vbCrLf
  319.               End If
  320.               Call ScrollText(chatbox, SendMessageLong(chatbox.hWnd, EM_GETLINECOUNT, 0&, 0&) - 12)
  321.               LockWindowUpdate 0
  322.               num = num + 1
  323.           Loop
  324.       End If
  325.       Close #12
  326. End Sub
  327. Private Sub weednames_Timer()
  328.     On Error Resume Next
  329.       newname = Dir$(thefullpath & "data\person" & myroom & "*")
  330.       Do While newname <> ""
  331.           listnum = 0
  332.           w = False
  333.           Do While listnum < lstNames.ListCount
  334.               If lstNames.List(listnum) = Right$(newname, Len(newname) - Len("person" & myroom)) Then w = True
  335.               listnum = listnum + 1
  336.           Loop
  337.           If w = False Then lstNames.AddItem Right$(newname, Len(newname) - Len("person" & myroom))
  338.           newname = Dir$()
  339.       Loop
  340.       listnum = 0
  341.       Do While listnum < lstNames.ListCount
  342.           w = False
  343.           newname = Dir$(thefullpath & "data\person" & myroom & "*")
  344.           Do While newname <> ""
  345.               If Right$(newname, Len(newname) - Len("person" & myroom)) = lstNames.List(listnum) Then w = True
  346.               newname = Dir$()
  347.           Loop
  348.           If w = False Then lstNames.RemoveItem (listnum)
  349.           listnum = listnum + 1
  350.       Loop
  351.       Call killpeople(Me.lstNames, myroom)
  352. End Sub
  353.