Ho già cercato delle guide ma non ho trovato quella che mi spiega bene la struttura!...
Le funzioni e le logiche che si possono fare all'interno di una struttura le conosco nel campo PLC (il mio alvoro) le uso quotidianamente... so bene cosa siano array pointer ecc... ma non ho ben afferrato la struttura del VB net!...
Io l'applicazione che di cui parlo lo già creata ma ho paura che non sia fatta con una struttura decente!... è funzionante niente da dire ... e non da errori ma non sono sicuro sia corretta!... faccio un esempio:
Questa è la form1:
composta da:
- 1 pulsante di uscita
- 1 pulsante accedi
- 2 campi text label per l'immissione di user ID e psw
- 1 progres bar per indicare il tempo rimanente prima della chiusura del programma se non vengono inserite le credenziali
- 1 label di avviso utente non autorizzato
codice:
Public Class Form1
Public conteggio As Integer
Public Const incremento As Integer = +1
Public login_utente As String
'______Caricamento form1
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Const cripta_testo As Char = "*"
TextBox1.PasswordChar = cripta_testo
TextBox2.PasswordChar = cripta_testo
End Sub
'_______form1______Pulsante chiudi
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
End
End Sub
'_______form1______Pulsante accedi
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
Dim utente() As String = {"paperina", "pluto", "paperino"}
Dim password() As String = {"123456", "1234567", "12345678"}
Dim testo_utente As String = TextBox1.Text
Dim testo_password As String = TextBox2.Text
Dim autorizzato As Single = False
Select Case testo_utente + testo_password
Case = utente(0) + password(0)
autorizzato = True
login_utente = utente(0)
Case = utente(1) + password(1)
autorizzato = True
login_utente = utente(1)
Case = utente(2) + password(2)
autorizzato = True
login_utente = utente(2)
Case Else
Label6.Visible = True
Timer2.Start()
End Select
'______Accesso autorizzato______
If autorizzato = True Then
Timer1.Stop()
Me.Hide()
Dim ricerca_password As New Ricerca_Password
ricerca_password.Show()
End If
End Sub
'_____Timer_inserzione credenziali______
Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick
ProgressBar1.Increment(-1)
If ProgressBar1.Value = 0 Then
End
End If
End Sub
'_____Timer_scomparsa_label_"non autorizzato"_____
Private Sub Timer2_Tick(sender As Object, e As EventArgs) Handles Timer2.Tick
conteggio = 0 + conteggio + incremento
If conteggio = 50 Then
Label6.Hide()
Timer2.Stop()
conteggio = 0
End If
End Sub
End Class
Questa è la form 2:
composta da:
- 1 pulsante di uscita
- 1 pulsante per copiare la psw selezionata
- 1 list box che al caricamento della form preleva i dati da un array
- 1 label di benvenuto
- 1 list box dove "dovrebbe filtrarmi i nomi con "per ora" la lettera ""f"" in maniera da poi suddividere in pagine separate i nomi secondo la prima lettera (ordine alfabetico) ma la funzione che ho provato per ora mi filtra tutte le stringhe che contengono all'interno la lettera..
codice:
Public Class form2
Public nome(10) As String
Public psw(10) As String
'______form2 pulsante chiudi_____
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
End
End Sub
'______Caricamento ricerca password_____
Private Sub form2_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Dim maschio_femmina As String
Timer1.Start()
Select Case Form1.login_utente
Case "paperina (femmina)"
maschio_femmina = "a "
Case "pluto", "paperino"
maschio_femmina = "o "
End Select
Label3.Text = "Benvenut" & maschio_femmina & Form1.login_utente & " !!!!"
Label6.Text = Form1.login_utente
'______archivio_______
nome(0) = "google"
nome(1) = "facebook"
nome(2) = "wifi ufficio"
nome(3) = "wifi casa"
nome(4) = "antifurto"
nome(5) = "knx"
nome(6) = "forum a"
nome(7) = "forum b"
nome(8) = "forum c"
nome(9) = "forum d"
psw(0) = "password google"
psw(1) = "password facebook"
psw(2) = "password wifi ufficio"
psw(3) = "password wifi casa"
psw(4) = "password antifurto"
psw(5) = "password knx"
psw(6) = "password forum a"
psw(7) = "password forum b"
psw(8) = "password forum c"
psw(9) = "password forum d"
'_____________________________
'_____importo gli elementi dell'array nella list box 1_____
Dim i As Integer
For i = 0 To 9
ListBox1.Items.Add(nome(i))
Next
'______filtraggio elementi array______
Dim testo As String
Dim k As Integer
Dim strSearch As String = "f"
Dim pointer As Integer
For k = 0 To 9
testo = (nome(k))
Dim indicePrimaOccorrenza As Integer = testo.IndexOf(strSearch)
If indicePrimaOccorrenza = -1 Then
pointer += 1
Else
ListBox2.Items.Add(nome(k))
End If
Next
'_____________________________________
End Sub
'_____Timer scomparsa benvenuto______
Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick
Form1.conteggio = 0 + Form1.conteggio + Form1.incremento
If Form1.conteggio = 70 Then
Label3.Hide()
Timer1.Stop()
Form1.conteggio = 0
End If
End Sub
'______pulsante di copia password_____
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
My.Computer.Clipboard.SetText(TextBox2.Text)
End Sub
'_____selezione nome archivio da listbox 1_____
Private Sub ListBox1_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ListBox1.SelectedIndexChanged
Dim n_selezione As Int32
n_selezione = ListBox1.SelectedIndex
TextBox2.Text = psw(n_selezione)
End Sub
End Class
è ancora da completare ... è appena all'inizio ... per quel poco che fa riesco a farla funzionare ... però non son sicuro di aver fatto la cosa giusta .... tipo:
l'array creato in form2 è giusto crearlo li? ... diciamo che funziona ... ma una volta compilato l'eseguibile io questo programma non potrò fare altro che avviarlo e copiare le psw che mi visualizzerà ... ma non potrò mai aggiungerne.... per aggiungerne immagino che questo array debba stare da qualche altra parte...?