Visualizzazione dei risultati da 1 a 7 su 7
  1. #1

    [vb6]Selezionare elemento combo in base a richiesta esterna

    Volevo sapere se è possibile selezionare un elmento della combo in base ad una richiesta esterna.
    Mi spiego meglio: ho una query che estrapola dei dati da una tabella del database.
    Tra i vari campi della tabella c'è un campo "genere" (si riferisce a generi di film visto che sto realizzando un programma per il videonoleggio) che vorrei, all'atto della fase di modifica dei dati di un singolo film, venga selezionato nella combo in base, ovviamente, alla query.
    Tra i metodi e le proprietà presenti non sono riuscito ad identificare nulla che facesse al caso mio.
    spero di essermi spiegato.
    saluti.

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Ottenuto il genere, devi fare una ricerca nella combobox.

    O la fai con un classico ciclo confrontanto i vari item (se il numero di elementi e' piccolo, diciamo meno di una cinquantina ...) potrebbe essere un metodo conveniente ...

    Oppure sfrutti il messaggio CB_FINDSTRING della combo e la API SendMessage per identificare l'item che contiene il genere che cerchi.

    Maggiori info in

    http://msdn.microsoft.com/library/de...findstring.asp

  3. #3
    Sono meno di una cinquantina gli elmenti. Proprio con la ricerca avevo provato a fare ma il problema rimane sempre quello di selezionare l'elemento una volta beccato e una volta trovata, nella combo, l'uguaglianza con quanto estratto dalla query.

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Beh ... questo e' il problema minore ...

    Mostra il codice che utilizzi per la ricerca ...

  5. #5
    il codice che ho usato per la ricerca mi son accorto di averlo erroneamente cancellato e quindi dovrò riscriverlo.
    A memoria ti dico che nel database ho una tabella in cui son contenuti tutti i generi che vengono caricati nella combo in fase di inserimento delle informazioni-prodotto. Contestualmente viene valorizzato un vettore con tutti i generi (operazione che viene eseguita solo alla prima esecuzione del programma).
    All'atto del salvataggio tutti i campi vengono salvati in una tabella con i dettagli del prodotto e quindi vado a inserire anche il genere che l'utente sceglie dalla combo.
    All'atto del richiamo del prodotto, viene fatto un confronto tra le informazioni estratte dalla query di selezione del prodotto e il contenuto del vettore. Quando questo confronto darà esito positivo (sono uguali gli elementi) allora nella combo dovrà essere selezionato l'elemento di indice "k" (che viene incrementato via via che il recordset scorre, su questo non ci sono problemi).
    Se hai bisogno di ulteriori informazioni per identificare meglio il problema fammi sapere.
    grazie per la disponibilità comunque.

  6. #6
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Ok ... se non ho capito male ti serve qualcosa del genere

    codice:
    Dim k As Integer
        
    For k = 0 To Combo1.ListCount - 1
      If Combo1.List(k) = Genere Then Exit For
    Next k
    If k < Combo1.ListCount Then
      Combo1.ListIndex = k
    Else
      Combo1.ListIndex = -1
    End If
    In cui Combo1 e' la tua combo, Genere e' la stringa che cerchi.

    Come risultato avrai che il genere e' selezionato nella combo se e' stato trovato, altrimenti sara' visualizzata la combo vuota.

  7. #7
    ecco grazie.
    Era il ".listindex" che proprio non riuscivo ad utilizzare...
    lunedì lo provo e ti faccio sapere!
    grazie per la disponibilità.

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.