Gambas-it

Gambas3 => Programmazione => Topic aperto da: akrobaticone - 16 Gennaio 2024, 14:14:30

Titolo: Modifica cella tableview
Inserito da: akrobaticone - 16 Gennaio 2024, 14:14:30
Ciao
ho una tableview composta da 3 colonne e righe variabili che aggiungo di volta in volta
quando edito l'ultima colonna a destra e in basso, quindi sotto non ci sono altre celle, non accetta l'enter per uscire dall'edit
Con tutte le altre celle funziona
Ci deve per forza essere una cella dopo quella che editiamo
il codice è semplice ed è quello della wiki
https://www.gambas-it.org/wiki/index.php/Modificare_il_contenuto_di_una_cella_di_una_TableView_cliccandoci_dentro (https://www.gambas-it.org/wiki/index.php/Modificare_il_contenuto_di_una_cella_di_una_TableView_cliccandoci_dentro)
mi succede sia con QT che con GTK

Non so se è una cosa normale, ma è un po fastidiosa
Titolo: Re:Modifica cella tyableview
Inserito da: Gianluigi - 16 Gennaio 2024, 16:14:39
Non mi è chiaro cosa stai cercando, (scusa ultimamente sono un po fuso)
Se cerchi di aggiungere una nuova riga dopo l'ultima puoi cambiare il codice così:
Codice: [Seleziona]
' Rende stabile il nuovo contenuto scritto nella cella cliccata:
Public Sub TableView1_Save(Row As Integer, Column As Integer, Value As String)

 TableView1[Row, Column].Text = Value
 If Row = TableView1.Rows.Count - 1 And If Column = TableView1.Columns.Count - 1 Then
   TableView1.Rows.Count += 1
 Endif

End

Altrimenti me lo devi spiegare meglio  :)

 :ciao:
Titolo: Re:Modifica cella tableview
Inserito da: akrobaticone - 16 Gennaio 2024, 17:23:08
Esempio
Tableview con due righe e 3 colonne
edito la cella della colonna 3  riga1 (doppio click), vi scrivo qualche cosa e premo enter
la cella selezionata si deseleziona e con l'evento save salvo il contenuto
edito la cella della colonna 3 riga 2 e premo enter, non succede nulla
la cella rimane selezionata e devo cliccare con il mouse da qualche altra parte per fare in modo che si deselezioni e lanci l'evento save
cioè
se edito la cella dell'ultima colonna (a destra) dell'ultima riga (in basso) non recepisce il tasto enter, mentre con tutte le altre celle funziona regolarmente
qualunque sia il numero di righe e di colonne

non devo aggiungere ulteriori righe, sto semplicemente editandone il contenuto
banalmente per risolvere il problema devo aggiungere una nuova riga oltre a quelle che devo editare, ma volevo evitarlo.

spero di essere stato esaustivo
Titolo: Re:Modifica cella tableview
Inserito da: Gianluigi - 16 Gennaio 2024, 17:27:26
"Enter" o Invio serve per spostarsi nella TableView, non serve per salvare.
Titolo: Re:Modifica cella tableview
Inserito da: Gianluigi - 16 Gennaio 2024, 17:30:44
Come detto Enter serve per spostarsi, quindi è normale che quando arriva in fondo non si sposti più ...
Titolo: Re:Modifica cella tableview
Inserito da: vuott - 16 Gennaio 2024, 17:31:08
non accetta l'enter per uscire dall'edit
Io ritengo che per l'ultima cella disponibile semplicemente non sia stata presa in considerazione  :-\ la necessità di uscire dalla "TableView", premendo il tasto "Invio".
Titolo: Re:Modifica cella tableview
Inserito da: Gianluigi - 16 Gennaio 2024, 17:36:20
non accetta l'enter per uscire dall'edit
Io ritengo che per l'ultima cella disponibile semplicemente non sia stata presa in considerazione  :-\ la necessità di uscire dalla "TableView", premendo il tasto "Invio".

Per uscire dalla TableView essendo un controllo "composito" occorre un doppio Tab, almeno credo
Titolo: Re:Modifica cella tableview
Inserito da: vuott - 16 Gennaio 2024, 17:38:34
...occorre un doppio Tab, almeno credo
Ho or ora constatato che basta premere una sola volta sul tasto "TAB".
Ad Acrobaticone dovrebbe essere bastevole la soluzione da te suggerita.
Titolo: Re:Modifica cella tableview
Inserito da: akrobaticone - 17 Gennaio 2024, 09:00:58
in effetti basta il tasto tab
quando si scrive viene spontaneo utilizzare l'enter e il fatto che non funzionasse sull'ultima cella mi ha incuriosito.
in ogni caso le spiegazioni che avete dato sono assolutamente esaustive.
Grazie