Io modificherei questa sub così
...
in linea con il resto del codice.
Si sono d'accordo
Poi ti consiglierei di evitare l'evento MouseDown nei DataBrowser è preferibile usare MouseUp.
Nel mio gestionale scritto diversi anni fà ancora con i primi Gambas2 ci ho litigato parecchio pechè l'evento è intercettato prima che altri controlli collegati siano aggiornati e porta a conseguenze difficili da interpretare per capire dove stà l'inghippo.
Qui sembra funzionare... comunque ne terrò conto, grazie.
Controllando il tuo codice mi sono accorto di un malfunzionamento che mi era sfuggito, se aggiungi un
Tipo di contatto per usarlo subito, la tabella
ttype non si aggiorna e di conseguenza il nuovo contatto non viene aggiunto alla tabella
tmedi.
Ho creato questo escamotage, funziona ma non sono soddisfatto:
Public Sub btnAddType_Click()
' Aggiunge un nuovo tipo di contatto alla tabella ttype e aggiorna la lista della combo.
Dim sValue As String = cbxType.Text
Dim hResult As Result
Dim hTable As Table
If IsNull(sValue) Then Return
If sValue Not Ends ": " Then sValue &= ": "
$hConn.Begin
hResult = $hConn.Find("ttype", "tytyp = &1", sValue)
If hResult.Available Then Return
hResult = $hConn.Create("ttype")
hResult!tytyp = sValue
hResult.Update
$hConn.Commit
'' l'escamotage :-(
Reload(sValue)
FillComboType()
Catch
Print Error.Text
$hConn.Rollback
End
Private Sub Reload(value As String)
If $iCurrentRow > 0 Then
btnPrevious_Click
btnNext_Click
Else
btnNext_Click
btnPrevious_Click
Endif
btnEdit_Click
cbxType.Text = value
cbxType_Click
End