Piccolo problema con Visual Basic 6
Ciao a tutti 
Ho un problemino con Visual Basic 6.
Voglio inserire una formula (anche semplice, tipo x^4+1) in una Textbox "Txtformula": questa formula dovrebbe poi farmi questo giro
Private Function f(x) As Double
f = Txtformula.Text
End Function
ma la Function non me la riconosce ("Errore di run-time '13': Tipo non corrispondente"). Ho provato anche con
f = CDbl(Txtformula.Text) (non me la riconosce)
e con
f = Val(Txtformula.Text) (mi dà f = 0...)
Impostata così, la mia f dovrebbe essere percepita come un numero dipendente da un parametro x: ma allora perché CDbl e Val non funzionano?

Ho un problemino con Visual Basic 6.
Voglio inserire una formula (anche semplice, tipo x^4+1) in una Textbox "Txtformula": questa formula dovrebbe poi farmi questo giro
Private Function f(x) As Double
f = Txtformula.Text
End Function
ma la Function non me la riconosce ("Errore di run-time '13': Tipo non corrispondente"). Ho provato anche con
f = CDbl(Txtformula.Text) (non me la riconosce)
e con
f = Val(Txtformula.Text) (mi dà f = 0...)
Impostata così, la mia f dovrebbe essere percepita come un numero dipendente da un parametro x: ma allora perché CDbl e Val non funzionano?
Risposte
purtroppo non funziona affatto cosí
la cosa é molto piú complessa
l'intera formula viene vista come una stringa e non come una formula dipendente da un paramtro
bisogna fare una complessa operazione di parsing che permetta al VB di trasformare la ció che tu scrivi sotto forma di testo in una formula
è da molto tempo che non mi capita di affrontare questo problema, é probabile ceh ci siano delle librerie di parsing giá fatte.
A mio tempo ne avevo fatta una in VB 6 ma é stata una lavoraccio
la cosa é molto piú complessa
l'intera formula viene vista come una stringa e non come una formula dipendente da un paramtro
bisogna fare una complessa operazione di parsing che permetta al VB di trasformare la ció che tu scrivi sotto forma di testo in una formula
è da molto tempo che non mi capita di affrontare questo problema, é probabile ceh ci siano delle librerie di parsing giá fatte.
A mio tempo ne avevo fatta una in VB 6 ma é stata una lavoraccio
...purtroppo lo sospettavo...
Avevo trovato qualcosa qui
http://utenti.multimania.it/giuseppetalo/
ma sfortunatamente con quel metodo ottengo lo stesso errore
Avevo trovato qualcosa qui
http://utenti.multimania.it/giuseppetalo/
ma sfortunatamente con quel metodo ottengo lo stesso errore

txtformula.text=f
Private Function f(x) As Double
f = (operazione matematica)
End Function
oppure txtformula = 'risultato operazione matematica'; oppure; oppure txtformula = CStr('risultato operazione matematica')
Private Function f(x) As Double
f = (operazione matematica)
End Function
oppure txtformula = 'risultato operazione matematica'; oppure; oppure txtformula = CStr('risultato operazione matematica')