Καλώς ορίσατε στο dotNETZone.gr - Σύνδεση | Εγγραφή | Βοήθεια
σε

 

Αρχική σελίδα Ιστολόγια Συζητήσεις Εκθέσεις Φωτογραφιών Αρχειοθήκες

VB 6 list box selected values

Îåêßíçóå áðü ôï ìÝëïò andtrds. Τελευταία δημοσίευση από το μέλος Μπλουγουράς Γιάννης στις 11-02-2010, 00:19. Υπάρχουν 1 απαντήσεις.
Ταξινόμηση Δημοσιεύσεων: Προηγούμενο Επόμενο
  •  09-02-2010, 22:54 57049

    VB 6 list box selected values

    Καλησπερα σε ολους παιδια

    θελω να ρωτησω το εξης : εχω μια Windows Form σε VB και ενα list box που παιρνει data απο ενα πινακα MS Access(Στο List box φαινεται μονο το ενα πεδιο το πινακα π.χ ΠΕΡΙΟΧΗ).Θελω να φτιαξω το εξης ,με βαση τα items(τις ΠΕΡΙΟΧΕΣ δλδ) που επιλεγει ο χρηστης απο το list box πατωντας ενα ok button να του εμφανιζει μια νεα φορμα με αυτα που εχει επιλεξει( με ολες τα πεδια του πινακα π.χ ΟΝΟΜΑ ΤΗΛΕΦΩΝΟ ΠΕΡΙΟΧΗ κτλ).Εχετε καμια ιδεα πως γινεται αυτο?Προσπαθω ωρες τωρα και δεν το εχω καταφερει...

     

  •  11-02-2010, 00:19 57069 σε απάντηση της 57049

    Απ: VB 6 list box selected values

    'Προσοχή δεν έχω δοκιμάσει τον κώδικα γιατί δεν έχω εγκατεστημένο VB6.
    'Αν είναι απαραίτητο να κάνεις χρήση vb6 τότε κάνε χρήση τον παρακάτω κώδικα, αλλιώς ξεκίνησε να μαθαίνεις VB .NET η C#, μην χάνεις τον χρόνο σου σε Legacy Code.

    Private Sub Form_Load()
        LoadRecords
    End Sub


    Public Sub LoadRecords()
        Dim rst As ADODB.Recordset
        Dim cnn As String
        cnn = "Connection String data"
       
        Set rst = GetRstFromSQL(cnn, "Select Id, Name From Area")
       
       
        If Not rst.EOF Then rst.MoveFirst
           Do While Not rst.EOF
               MyList.AddItem rst!Name
               MyList.ItemData(MyList.NewIndex) = rst!Id
               rst.MoveNext
        Loop
       
    End Sub

    Private Sub GetRecordButton_Click()
        'Προσοχή δεν έχω βάλει error Handling, αν δεν υπαρχει το Id βγάζει Exception.
        Dim SelectedItemData As Long
        SelectedItemData = MyList.ItemData(MyList.ListIndex)
       
        Dim rst As ADODB.Recordset
        Dim cnn As String
        cnn = "Connection String data"
       
        Set rst = GetRstFromSQL(cnn, "Select Id, Name, zipcode From Area where Id=" & SelectedItemData)
        Dim frm As AreaForm
        Set frm = New AreaForm
        frm.Datasource rst  ' H datasource είναι μία ρουτίνα  στην φόρμα AreaForm > Public Sub SetDatasource(area As Recordset)
        frm.Show
    End Sub

    'Ρουτίνα που επιστρέφει ADODB.Recordset
    'Παίρνει δύο παραμέτρους 1. ConnectionString  και 2. το το Sql ερώτημα προς την βάση.
    Public Function GetRstFromSQL(ConnectionString As String, strSQL As String) As ADODB.Recordset
       On Error GoTo Handle_Err
      
      Dim cnn As ADODB.Connection
      Dim rst As ADODB.Recordset
      Set cnn = New ADODB.Connection
      cnn.ConnectionString = ConnectionString
      cnn.Open
      If Not cnn.State = adStateOpen Then
          GoTo Exit_Here
      End If
     
       Set rst = New ADODB.Recordset
       With rst
           .CursorLocation = adUseClient
           .LockType = adLockReadOnly
           .CursorType = adOpenStatic
           Set .ActiveConnection = cnn
           .Source = strSQL
           .Open
           Set .ActiveConnection = Nothing
      End With
     
       Set GetRstFromSQL = rst
       Set rst = Nothing
    Exit_Here:
      If Not cnn Is Nothing Then
          If cnn.State = adStateOpen Then
              cnn.Close
          End If
          Set cnn = Nothing
      End If
      Exit Function
    Handle_Err:
      Select Case Err.Number
        Case Else
            MsgBox (Err.Description)
      End Select
      Resume Exit_Here
      Resume
    End Function

     


    Μπλουγουράς Γιάννης
    Wizcom O.E.
Προβολή Τροφοδοσίας RSS με μορφή XML
Με χρήση του Community Server (Commercial Edition), από την Telligent Systems