Newsgroup: it.comp.lang.visual-basic
Titolo: Textbox

Salve, č la prima volta che posto su questo NG.
Ho il seguente problema: ho un database strutturato nel seguente modo.
 Codice articolo      Descrizione   Prezzo
 001                              cassette  2
 002                                  cd      1
  .    .   .
  .    .   .
eccetera.
Ho creato un form con una combobox e due textbox.
Con la Combobox visualizzo il codice, mentre con le textbox in una la
descrizione in un'altra il prezzo.
Con la combobox non ho nessun problema, riesco a visualizzare
tranquillamente i codici nel menů a tendina, ma quando clicco su un
determinato codice vorrei visualizzare nelle textbox anche il contenuto di
"descrizione" e "Prezzo" riferite al codice selezionato.
Cioč clicco su 002 dalla combo, in text1 dovrei visualizzare "cd" e in text2
"1".
Sapete aiutarmi? Avete del codice che fa per me?
Grazie 1000.

 Sapete aiutarmi? Avete del codice che fa per me?
In linea di massima, il concetto č:
Sull'evento click della combobox, popoli le due textbox con i dati
richiesti.
A questo punto, il problema si č spostato sul reperimento dei dati.
Non hai indicato se usi, ad esempio, un recordset ADO.
Se cosě č, puoi mettere, nell'evento click:
recordset.filter="Campo_Codice='" & combobox.text & "'"
if recordset.bof and recordset.eof then exit sub 'Nessun record soddisfa il
filtro
recordset.movefirst 'Se piů record soddsfano il filtro scelgo il primo
TextBox_Descrizione.Text=Recordset.Fields.Item("Campo_Descrizione").Value
TextBox_Prezzo.Text=Cstr(Recordset.fields.item("Campo_Prezzo").Value)
Recordset.Filter=AdFilterNone
Ciao
Alberto

come lo gestisci il collegamento al db?
hai un datacontrol oppure hai scritto del codice?
--------------------------------
Inviato via 
http://usenet.libero.it

 wrote in message
It929.25351$n04.7...@twister2.libero.it...


 sempre l'ultimo record. (Della field "descrizione")
Posta il codice modificato per girare sul tuo recordset e vediamo cosa si
può fare.
Ciao
Alberto

Ti invio il codice anche se sostanzialmente č quello che mi hai suggerito tu
prima, con la modifica dei nomi e del Data.
Accedo con il componente Data1 al database Articoli.dbf, ho collegato Combo1
al data1 con Datafield (COD_ART), text1 con data1 (datafield DESC_1) e text2
con data1 (datafield TOT)
Sei veramente molto gentile! Grazie di tutto quello che stai facendo.
----------
Private Sub Combo1_Click()
Data1.recordset.filter = "COD_ART = "' & Combo1.Text & "'"
If Data1.Recordset.BOF And Data1.Recordset.EOF Then Exit Sub
Data1.Recordset.MoveFirst
Text1.Text = Data1.Recordset.Fields.Item("DESC_1").Value
Text2.Text = CStr(Data1.Recordset.Fields.Item("TOT").Value
End Sub

 Data1.recordset.filter = "COD_ART = "' & Combo1.Text & "'"
Data1.recordset.filter = "COD_ART = '" & Combo1.Text & "'"
Se sei molto attenta vedrai la differenza :-))))
Se funziona mi mandi un bacio.
Ciao
Alberto

Ho corretto l'errore, ma ancora non funziona. Stesso errore.
Un'altra cosa: nell'ultima riga di codice (e cioè Data1.Recordset.filter =
adfilternone) non viene riconosciuta l'istruzione "AdFilterNone" come se non
esistesse!
Non so che fare.

Ho corretto l'errore, ma ancora non funziona. Stesso errore. (operazione non
supportata per questo tipo di oggetto) dando l'errore sulla prima riga.
Un'altra cosa: nell'ultima riga di codice (e cioč Data1.Recordset.filter =


 esistesse!
"ad" starebbe per una costante ADO, quindi si presume che vengano dichiarati
i riferimenti a ADO.
Personalmente ho provato con DAO (dichiarando fra i riferimenti DAO 3.6) e
con questo codice non ho problemi:
Dim db As DAO.Database
Dim rs As DAO.Recordset
Set db = OpenDatabase("C:\Cartella_files_db3\", 0, 0, "dBASE III;")
Set rs = db.OpenRecordset("Select * from nome_file_dbf_senza_dbf")
rs.Filter = "CAMPO_TESTO='valore_desiderato'"

 esistesse!
Aggiungi i riferimenti alla libreria ADO che hai sul PC.
Ciao
Alberto