24-04-2012, 10:09 PM
Volete creare una chat come questa ?
Login:
Chat Online:
Chat Online + Impostazioni Aperte
Chat Online + Impostazioni Aperte + Pannello Staff
Da oggi si può (Vi dico subito, che ho seguito un tutorial tedesco, quindi i nomi saranno in tedesco e dovrete rinominare i bottoni, le textbox ecc come lo rinomino io)
Attenzione! Prima di incominciare, create tre file di estensione .txt, e uppateli sul vostro server.
I file sono:
- "Chat.txt"
- "Benutzer.txt"
- "Kick.txt"
Login:
Chat Online:
Chat Online + Impostazioni Aperte
Chat Online + Impostazioni Aperte + Pannello Staff
Da oggi si può (Vi dico subito, che ho seguito un tutorial tedesco, quindi i nomi saranno in tedesco e dovrete rinominare i bottoni, le textbox ecc come lo rinomino io)
Attenzione! Prima di incominciare, create tre file di estensione .txt, e uppateli sul vostro server.
I file sono:
- "Chat.txt"
- "Benutzer.txt"
- "Kick.txt"
Importate 2 timer, e chiamateli rispettivamente "Downloader" e "Userlist".
A downloader date un tempo di circa 2.000 millisecondi, mentre a Userlist dategli 5.000 millisecondi.
Importate poi un ColorDialog.
Serviranno 10 Bottoni.
2 RichTextBox
1 ListBox
1 Textbox
1 TrackBar
Passiamo al codice:
Sotto a Public Class Form 1, inserite:
Spoiler:
Dim wc As New Net.WebClient
Dim passwort As String = "inserite la password del vostro ftp"
Dim benutzername As String = "inserite il nome utente del vostro ftp"
Dim userliste As New RichTextBox
Dim passwort As String = "inserite la password del vostro ftp"
Dim benutzername As String = "inserite il nome utente del vostro ftp"
Dim userliste As New RichTextBox
Rinominate ora il bottone che servirà per inviare il messaggio (e non il testo, ma il nome di progettazione dovete rinominare!") in "Senden".
Fate la stessa cosa con il bottone delle impostazioni e rinominatelo in "Einstellungen".
Codice Bottone invia messaggio:
Spoiler:
wc.Credentials = New Net.NetworkCredential(benutzername, passwort)
wc.UploadString("Ftp://linkvostrositoftp/Chat.txt", Anzeigefeld.Text & vbCrLf & Form2.TextBox1.Text & ": " & Eingabefeld.Text)
Eingabefeld.Text = ""
wc.UploadString("Ftp://linkvostrositoftp/Chat.txt", Anzeigefeld.Text & vbCrLf & Form2.TextBox1.Text & ": " & Eingabefeld.Text)
Eingabefeld.Text = ""
Se vi da errore, non preoccupatevi è xk dobbiamo ancora rinominare delle altre cose.
Ora rinominate, la richtextbox che servirà per visualizzare i messaggi degli altri, in "Anzeigefeld".
Fate lo stesso, con la richtextbox che servirà per scrivere il vostro messaggio e rinominatela in "Eingabefeld".
Passiamo ora al timer "Downloader". Inserite questo codice:
Spoiler:
wc.Credentials = New Net.NetworkCredential(benutzername, passwort)
Anzeigefeld.Text = wc.DownloadString("Ftp://linkvostrositoftp/Chat.txt")
Anzeigefeld.Text = wc.DownloadString("Ftp://linkvostrositoftp/Chat.txt")
Passiamo ora al timer "Userlist". Inserite questo codice:
Spoiler:
User.Items.Clear()
wc.Credentials = New Net.NetworkCredential(benutzername, passwort)
userliste.Text = wc.DownloadString("Ftp://linkvostroftp/Benutzer.txt")
For Each line In userliste.Lines
User.Items.Add(line)
For i As Integer = User.Items.Count - 1 To 0 Step 1
If User.Items(i) = String.Empty Then
User.Items.Remove(String.Empty)
End If
Next
Next
If Form2.TextBox1.Text = wc.DownloadString("Ftp://linkvostroftp/Kick.txt") Then
Senden.Enabled = False
wc.UploadString("Ftp://linkvostroftp/Kick.txt", "")
Downloader.Stop()
User.Items.Clear()
wc.Credentials = New Net.NetworkCredential(benutzername, passwort)
Dim neuedaten As New RichTextBox
neuedaten.Text = wc.DownloadString("Ftp://linkvostroftp/Benutzer.txt")
neuedaten.Text = neuedaten.Text.Replace(Form2.TextBox1.Text, "")
wc.UploadString("Ftp://linkvostroftp/Benutzer.txt", neuedaten.Text)
MsgBox("L'utente è stato kikkato.")
End
End If
wc.Credentials = New Net.NetworkCredential(benutzername, passwort)
userliste.Text = wc.DownloadString("Ftp://linkvostroftp/Benutzer.txt")
For Each line In userliste.Lines
User.Items.Add(line)
For i As Integer = User.Items.Count - 1 To 0 Step 1
If User.Items(i) = String.Empty Then
User.Items.Remove(String.Empty)
End If
Next
Next
If Form2.TextBox1.Text = wc.DownloadString("Ftp://linkvostroftp/Kick.txt") Then
Senden.Enabled = False
wc.UploadString("Ftp://linkvostroftp/Kick.txt", "")
Downloader.Stop()
User.Items.Clear()
wc.Credentials = New Net.NetworkCredential(benutzername, passwort)
Dim neuedaten As New RichTextBox
neuedaten.Text = wc.DownloadString("Ftp://linkvostroftp/Benutzer.txt")
neuedaten.Text = neuedaten.Text.Replace(Form2.TextBox1.Text, "")
wc.UploadString("Ftp://linkvostroftp/Benutzer.txt", neuedaten.Text)
MsgBox("L'utente è stato kikkato.")
End
End If
Se vi da errore, non preoccupatevi, è perchè dobbiamo ancora rinominare altre cose.
Andiamo ora sulla TrackBar, che servirà per impostare la trasparenza del programma. Nelle proprietà, su Maximum, impostate il valore "2".
Inseritegli poi questo codice:
Spoiler:
If TrackBar1.Value = 0 Then
Me.Opacity = 1
End If
If TrackBar1.Value = 1 Then
Me.Opacity = 0.8
End If
If TrackBar1.Value = 2 Then
Me.Opacity = 0.5
End If
Me.Opacity = 1
End If
If TrackBar1.Value = 1 Then
Me.Opacity = 0.8
End If
If TrackBar1.Value = 2 Then
Me.Opacity = 0.5
End If
Bene, abbiamo appena realizzato le funzioni base (quasi tutte).
Passiamo al My.Settings (ovvero le impostazioni modificabili nel My Project)
Impostate il vostro My.Settings, come nell'immagine sottostante:
Prendete ora 3 bottoni, che ci serviranno per impostare:
- Colore di Sfondo
- Colore Testo
- Colore Bottoni
Rinominate (nel nome della progettazione ovviamente), il bottone del colore di sfondo in "Hintergrundfarbe".
Rinominate, il bottone del colore testo in "Textfeldfarbe".
Rinominate, il bottone colore bottoni in "Buttonfarbe".
Inserite nel bottone, colore di sfondo:
Spoiler:
ColorDialog1.ShowDialog()
Me.BackColor = ColorDialog1.Color
My.Settings.Hintergrundfarbe = Me.BackColor
My.Settings.Save()
Me.BackColor = ColorDialog1.Color
My.Settings.Hintergrundfarbe = Me.BackColor
My.Settings.Save()
Inserite nel bottone, colore testo:
Spoiler:
ColorDialog1.ShowDialog()
Anzeigefeld.BackColor = ColorDialog1.Color
Eingabefeld.BackColor = ColorDialog1.Color
User.BackColor = ColorDialog1.Color
My.Settings.Textfeldfarbe = Anzeigefeld.BackColor
My.Settings.Save()
Anzeigefeld.BackColor = ColorDialog1.Color
Eingabefeld.BackColor = ColorDialog1.Color
User.BackColor = ColorDialog1.Color
My.Settings.Textfeldfarbe = Anzeigefeld.BackColor
My.Settings.Save()
Inserite nel bottone, colore bottoni:
Spoiler:
ColorDialog1.ShowDialog()
Senden.BackColor = ColorDialog1.Color
Einstellungen.BackColor = ColorDialog1.Color
Admin.BackColor = ColorDialog1.Color
einstellungenhide.BackColor = ColorDialog1.Color
My.Settings.buttonfarbe = ColorDialog1.Color
My.Settings.Save()
Senden.BackColor = ColorDialog1.Color
Einstellungen.BackColor = ColorDialog1.Color
Admin.BackColor = ColorDialog1.Color
einstellungenhide.BackColor = ColorDialog1.Color
My.Settings.buttonfarbe = ColorDialog1.Color
My.Settings.Save()
Prendete ora un bottone, che servirà per kikkare gli utenti, e abbinateci la textbox che abbiamo importato prima, dove dovremmo inserire il nome dell'utente da kikkare. Rinominatelo in "Kick":
Spoiler:
wc.Credentials = New Net.NetworkCredential(benutzername, passwort)
wc.UploadString("Ftp://linkvostroserverftp/Kick.txt", TextBox1.Text)
wc.UploadString("Ftp://linkvostroserverftp/Kick.txt", TextBox1.Text)
Prendete ora un'altro bottone che servirà a cancellare tutta la conversazione in chat. Rinominatelo in "Chatverlauf_löschen":
Spoiler:
wc.Credentials = New Net.NetworkCredential(benutzername, passwort)
wc.UploadString("Ftp://linkvostroserverftp/Chat.txt", "")
wc.UploadString("Ftp://linkvostroserverftp/Chat.txt", "")
Andate ora nell'evento del Form1 "Closing" e inserite questo codice:
Spoiler:
User.Items.Clear()
wc.Credentials = New Net.NetworkCredential(benutzername, passwort)
Dim neuedaten As New RichTextBox
neuedaten.Text = wc.DownloadString("Ftp://linkvostroserverftp/Benutzer.txt")
neuedaten.Text = neuedaten.Text.Replace(Form2.TextBox1.Text, "")
wc.UploadString("Ftp://linkvostroserverftp/Benutzer.txt", neuedaten.Text)
wc.Credentials = New Net.NetworkCredential(benutzername, passwort)
Dim neuedaten As New RichTextBox
neuedaten.Text = wc.DownloadString("Ftp://linkvostroserverftp/Benutzer.txt")
neuedaten.Text = neuedaten.Text.Replace(Form2.TextBox1.Text, "")
wc.UploadString("Ftp://linkvostroserverftp/Benutzer.txt", neuedaten.Text)
Passiamo ora al form di login, di questa chat. Quindi inserite un'altro form.
Importate:
- 1 TextBox
- 1 Bottone
Sotto a Public Class Form 2, dichiarate le seguenti varibili:
Spoiler:
Dim richtextbox As New RichTextBox
Dim wc As New Net.WebClient
Dim passwort As String = "password vostro server ftp"
Dim benutzername As String = "username vostro server ftp"
Dim wc As New Net.WebClient
Dim passwort As String = "password vostro server ftp"
Dim benutzername As String = "username vostro server ftp"
Inserite poi, nel Button 1:
Spoiler:
ate Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
If Not TextBox1.Text.Length < 5 Then
If TextBox1.Text = "" Then
MsgBox("E' richiesto un nome utente.")
Else
wc.Credentials = New Net.NetworkCredential(benutzername, passwort)
richtextbox.Text = wc.DownloadString("ftp://linkvostroserverftp/Benutzer.txt")
If richtextbox.Text.Contains(TextBox1.Text) Then
MsgBox("Nome utente già in uso.")
Else
wc.UploadString("ftp://linkvostroserverftp/Benutzer.txt", richtextbox.Text & vbCrLf & TextBox1.Text)
Form1.Show()
Me.Hide()
End If
End If
End If
If Not TextBox1.Text.Length < 5 Then
If TextBox1.Text = "" Then
MsgBox("E' richiesto un nome utente.")
Else
wc.Credentials = New Net.NetworkCredential(benutzername, passwort)
richtextbox.Text = wc.DownloadString("ftp://linkvostroserverftp/Benutzer.txt")
If richtextbox.Text.Contains(TextBox1.Text) Then
MsgBox("Nome utente già in uso.")
Else
wc.UploadString("ftp://linkvostroserverftp/Benutzer.txt", richtextbox.Text & vbCrLf & TextBox1.Text)
Form1.Show()
Me.Hide()
End If
End If
End If
Andate poi nel MyProject, e inserite come form di avvio il "Form 2" e come Modalità di chiusura, selezionate quella "Alla chiusura dell'ultimo form."
Ora, se avete seguito tutto attentamente, il risultato dovrebbe essere simile al mio. Ringrazio Visual Basic 08 Team, per il tutorial.
iù: 1 accettati e commentate
Ps: nel caso ne aveste fatta una, potete postare i vostri lavori qua sotto