Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente bannato
    Registrato dal
    Jan 2004
    Messaggi
    3

    ordinare dati - disperata

    Faccio informatica e non so il perche!!
    allora vi prego aiitatemi!!
    devo inserire dei dati in delle text box e farli inserire ordinati...questo è quello che jo provato a fare:

    Private Sub Command3_Click()
    num = num + 1
    persona(num).corrente = num
    persona(num).successivo = num + 1
    If num > 2 Then
    persona(num).precedente = num - 1
    End If

    For i = 0 To 10
    If num > 1 Then
    If Text1.Text < persona(persona(num).precedente).nome Then
    persona(persona(num).corrente).nome = persona(num).nome
    persona(num).nome = Text1.Text
    num = num - 1
    Else
    persona(persona(num).corrente).nome = Text1.Text
    End If
    Next i
    num = persona(num).corrente

    End Sub

    GRAZIEEE!!!

  2. #2
    se mi spieghi meglio, provo ad aiutarti...

    hai un array, OK, che tipo di dati contiene l'array persona()?

    devi ordinarli in base a cosa (ad un numero da 1 a n)
    oppure dalla A alla Z?
    ...Terrible warlords, good warlords, and an english song

  3. #3
    Utente bannato
    Registrato dal
    Jan 2004
    Messaggi
    3
    Private Type archivio
    nome As String

    successivo As Integer
    precedente As Integer
    End Type

    Dim persona(10) As archivio

    Dim i As Integer
    Dim num As Integer


    dalla a alla z

    se ce la faccio non so come ma ti devo una pizza!

  4. #4
    codice:
    Option Explicit
        Dim persona(10) As String, i As Integer
        
    Private Sub Form_Load()
        persona(0) = "Mario"
        persona(1) = "Marco"
        persona(2) = "Franco"
        persona(3) = "Alberto"
        persona(4) = "Albise"
        persona(5) = "Alba"
        persona(6) = "Francesco"
        persona(7) = "Ferdinando"
        persona(8) = "Marcello"
        persona(9) = "Carlo"
    
        'visualizzo l'array (non ordinato) nella textbox
        For i = LBound(persona) To UBound(persona)
            Text1.Text = Text1.Text & ", " & persona(i)
        Next i
    End Sub
    
    Private Sub Command1_Click()
        Dim j As Integer, temp As String
        
        ' ordino i dati in modo crescente (A -> Z)     
        For i = LBound(persona) To UBound(persona) - 1
            
            For j = i + 1 To UBound(persona) - 1
                
                If persona(j) < persona(i) Then
                    temp = persona(i)
                    persona(i) = persona(j)
                    persona(j) = temp
                End If
             
             Next j
         
        Next i
        
        Text1.Text = ""
    
        'visualizzo l'array ordinato nella textbox
        For i = LBound(persona) To UBound(persona)
            Text1.Text = Text1.Text & ", " & persona(i)
        Next i
    End Sub
    P.S. comunque non sono sicuro di aver "centrato" la tua richiesta. Causa:
    ...Terrible warlords, good warlords, and an english song

  5. #5
    riprendendo l'esempio postato sopra,
    una volta aver ordinato l'array, puoi effettuare
    un controllo sulle textbox anche nel seguente modo:
    codice:
    Private Sub Text2_LostFocus() ' passaggio focus ad un altro controllo  
    
       If Text2.Text <> persona(1) Then
           MsgBox ("ERRORE: Text2 non può essere MINORE di persona(0)")
       End If
    End Sub
    
    Private Sub Text3_LostFocus() ' passaggio focus ad un altro controllo  
       If Text3.Text <> persona(2) Then
           MsgBox ("ERRORE: Text3 non può essere MINORE di persona(1)")
       End If
    End Sub


    Ad ogni modo la cosa più semplice è la seguente (solo controllo sulle textbox)
    codice:
    Private Sub Text2_lostfocus()
       If Text2.Text < Text1.Text Then
           MsgBox ("ERRORE: Text2 non può essere MINORE di Text1")
           Text2.SetFocus
       End If
    End Sub
    
    Private Sub Text3_LostFocus()
       If Text3.Text < Text2.Text Then
           MsgBox ("ERRORE: Text3 non può essere MINORE di Text2")
           Text3.SetFocus
       End If
    End Sub
    ...Terrible warlords, good warlords, and an english song

  6. #6
    visto che sei nuovo/a ti invito a leggere il regolamanto specialmente per quanto riguarda i titoli
    Vascello fantasma dei mentecatti nonchè baronetto della scara corona alcolica, piccolo spuccello di pezza dislessico e ubriaco- Colui che ha modificato l'orribile scritta - Gran Evacuatore Mentecatto - Tristo Mietitore Mentecatto chi usa uTonter danneggia anche te

  7. #7
    Utente di HTML.it
    Registrato dal
    Jan 2004
    Messaggi
    47
    SI MA IL PROBLEMA CHE NELLA TEXT BOX NE DEVO VISUALIZZARE UNO ALLA VOLTA E POI SCORRERE CON UN BUTTON (SEMPRE IN ORDINE ALFABETICO)

  8. #8
    Utente di HTML.it
    Registrato dal
    Jan 2004
    Messaggi
    47
    HO SCRITTO CON IL NICK DI MIO FRATELLO....SONO VALY

  9. #9
    Originariamente inviato da bobo79
    HO SCRITTO CON IL NICK DI MIO FRATELLO....SONO VALY

    ci potrei anche credere... ma ho ragioni fondate per non farlo.

    ti disabilito uno dei due nick. ocio in futuro.
    w la topa

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.