Ciao a tutti!
Chiedo a voi esperti, devo creare un pulsante Ordina in vb2008 che mi ordini cliccando un radio button a seconda se lo voglio per data di nascita o per cognome, dei nomi scritti da noi...vi scrivo il mio codicee lo screen:
Public Class frmElencoNomi
'Struttura dati
Private Structure Dati
Dim cognome As String
Dim nome As String
Dim dn As Date 'Data di Nascita
Dim residenza As String
End Structure
Dim Elenco() As Dati
Dim i As Byte 'indice di scansione dell'array
Private Sub frmElencoNomi_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
btnProcediCar.Enabled = True
txtNumPersone.Enabled = True
grpDati.Enabled = False
btnCarica.Enabled = False
i = 0 'inizializza l'indice di scansione dell'array
End Sub
Private Sub btnProcediCar_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnProcediCar.Click
ReDim Elenco(Val(txtNumPersone.Text) - 1) 'ridimensiona l'array a runtime
btnProcediCar.Enabled = False 'il bottone per avviare il caricamento ora è disabilitato
txtNumPersone.Enabled = False 'il numero di prodotti ora non deve poter essere modificato
grpDati.Enabled = True 'le caselle di testo per i dati del prodotto ora sono abilitate
btnCarica.Enabled = True 'il caricamento ora è abilitato
End Sub
Private Sub btnCarica_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCarica.Click
'Input dei prodotti nel listino
With Elenco(i)
.cognome = txtCognome.Text
.nome = txtNome.Text
.dn = Format(CDate(txtDataNascita.Text), "dd/MM/yyyy")
.residenza = txtResidenza.text
End With
i = i + 1 'aggiorna l'indice di scansione dell'array
'Se vettore pieno allora disabilita il bottone carica
'altrimenti pulisce
If i = Val(txtNumPersone.Text) Then
btnCarica.Enabled = False
grpDati.Enabled = False
Else
txtCognome.Text = ""
txtNome.Text = ""
txtDataNascita.Text = ""
txtResidenza.Text = ""
txtCognome.Focus() 'torna sul primo textbox
End If
End Sub
Private Sub btnVisualizza_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnVisualizza.Click
Dim indice As Byte
LstElenco.Items.Add("COGNOME".PadRight(15) & "NOME".PadRight(15) & "DATA DI NASCITA".PadRight(15) & "RESIDENZA".PadLeft(15))
LstElenco.Items.Add("".PadRight(60, "-"))
For indice = 0 To Val(txtNumPersone.Text) - 1
With Elenco(indice)
LstElenco.Items.Add(.cognome.PadRight(15) & _
.nome.PadRight(15) & _
CStr(.dn).PadRight(15) & _
.residenza.PadLeft(15))
End With
Next indice
End Sub
Private Sub btnFine_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnFine.Click
End
End Sub
Private Sub grpProdotto_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles grpDati.Enter
End Sub
Private Sub LstListino_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles LstElenco.SelectedIndexChanged
End Sub
Private Sub Label4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Label4.Click
End Sub
Private Sub txtNumProdotti_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtNumPersone.TextChanged
End Sub
End Class
La parte finale non so cos'è...è comparsa adesso...
Quindi devo ordinare i dati che inserirò...
coiè devo creare un groupbox con dentro 2 radiobutton:
-Ordina per data di nascita
-Ordina per Cognome
Mi potreste aiutare??
Non so da dove pertire...
Grazie mille...
è urgente...
Ringrazio tutti!
ciao"!
Chiedo a voi esperti, devo creare un pulsante Ordina in vb2008 che mi ordini cliccando un radio button a seconda se lo voglio per data di nascita o per cognome, dei nomi scritti da noi...vi scrivo il mio codicee lo screen:
Public Class frmElencoNomi
'Struttura dati
Private Structure Dati
Dim cognome As String
Dim nome As String
Dim dn As Date 'Data di Nascita
Dim residenza As String
End Structure
Dim Elenco() As Dati
Dim i As Byte 'indice di scansione dell'array
Private Sub frmElencoNomi_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
btnProcediCar.Enabled = True
txtNumPersone.Enabled = True
grpDati.Enabled = False
btnCarica.Enabled = False
i = 0 'inizializza l'indice di scansione dell'array
End Sub
Private Sub btnProcediCar_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnProcediCar.Click
ReDim Elenco(Val(txtNumPersone.Text) - 1) 'ridimensiona l'array a runtime
btnProcediCar.Enabled = False 'il bottone per avviare il caricamento ora è disabilitato
txtNumPersone.Enabled = False 'il numero di prodotti ora non deve poter essere modificato
grpDati.Enabled = True 'le caselle di testo per i dati del prodotto ora sono abilitate
btnCarica.Enabled = True 'il caricamento ora è abilitato
End Sub
Private Sub btnCarica_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCarica.Click
'Input dei prodotti nel listino
With Elenco(i)
.cognome = txtCognome.Text
.nome = txtNome.Text
.dn = Format(CDate(txtDataNascita.Text), "dd/MM/yyyy")
.residenza = txtResidenza.text
End With
i = i + 1 'aggiorna l'indice di scansione dell'array
'Se vettore pieno allora disabilita il bottone carica
'altrimenti pulisce
If i = Val(txtNumPersone.Text) Then
btnCarica.Enabled = False
grpDati.Enabled = False
Else
txtCognome.Text = ""
txtNome.Text = ""
txtDataNascita.Text = ""
txtResidenza.Text = ""
txtCognome.Focus() 'torna sul primo textbox
End If
End Sub
Private Sub btnVisualizza_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnVisualizza.Click
Dim indice As Byte
LstElenco.Items.Add("COGNOME".PadRight(15) & "NOME".PadRight(15) & "DATA DI NASCITA".PadRight(15) & "RESIDENZA".PadLeft(15))
LstElenco.Items.Add("".PadRight(60, "-"))
For indice = 0 To Val(txtNumPersone.Text) - 1
With Elenco(indice)
LstElenco.Items.Add(.cognome.PadRight(15) & _
.nome.PadRight(15) & _
CStr(.dn).PadRight(15) & _
.residenza.PadLeft(15))
End With
Next indice
End Sub
Private Sub btnFine_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnFine.Click
End
End Sub
Private Sub grpProdotto_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles grpDati.Enter
End Sub
Private Sub LstListino_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles LstElenco.SelectedIndexChanged
End Sub
Private Sub Label4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Label4.Click
End Sub
Private Sub txtNumProdotti_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtNumPersone.TextChanged
End Sub
End Class
La parte finale non so cos'è...è comparsa adesso...
Quindi devo ordinare i dati che inserirò...
coiè devo creare un groupbox con dentro 2 radiobutton:
-Ordina per data di nascita
-Ordina per Cognome
Mi potreste aiutare??
Non so da dove pertire...
Grazie mille...
è urgente...
Ringrazio tutti!
ciao"!
Ultima modifica: