German Selected Row auf einem ScvList löschen

kaplanerkan

Member
Licensed User
Longtime User
Hallo,

ich versuche gerade mit dem Grid zu basteln. Dafür habe ich das Project-Datei von Klaus als Beispiel genommen und etwas geändert.

Hab 1x Add- und Delete-Buttons...Mit Add-Button kann ich ohne Probleme auf dem ScrollView neue Einträge hinzufügen. Problem ist beim Löschen, möchte die selected-Row (nicht rows, ich benutze keine Multiselection, sondern single selection) einfach löschen...

Leider komme ich nicht mehr weiter, denn bei mir wird nicht die Row gelöscht, sondern nur die Cell's. Kann mir jemand weiter helfen?


Project-Datei ist im Anhang.

Danke im Voraus
erkaN
 

Attachments

  • row_delete.zip
    9 KB · Views: 131

klaus

Expert
Licensed User
Longtime User
Beiliegend eine abgeänderte Version.
Das löschen einer Zeile wird fogendermassen vorgenommen.
- Zeileninhalt der nächsten Zeilen in die vorhergehenden Zeilen kopieren, angefangen mit der zu löschenden Zeile.
- Taginhalt neu definieren.
- die Views der letzte Zeile löschen.

Beste Grüsse.
 

Attachments

  • row_delete_1.zip
    9.1 KB · Views: 124

kaplanerkan

Member
Licensed User
Longtime User
Danke Klaus,

soweit funktioniert alles gut. Jetz habe ich folgendes Problem.

Jetzt habe ich noch 2 Buttons: PlusOne und MinusOne
mit Hilfe dieser Buttons möchte ich die CELLs etwas ändern/editiren, zb mit Hilfe von SelectedRow habe ich folgende 4 Cells:

B4X:
Cell (SelectedRow,0)  
'  Anzahl

Cell (SelectedRow,1)  
'  Nummer  (konstant, man kan (möchte) nicht ändern

Cell (SelectedRow,2)  
'  Beschreibung (konstant, man kan (möchte) nicht ändern)

Cell (SelectedRow,3)  
'  Preis  (Preis = Anzahl * StückPreis 
oder
' Preis =  Anzahl * (Preis/Stück))


Ich füge mit ADD-Button, sagen wir 4 Stück Lines. Soweit so gut.
Die letzte 3 Lines, kann ich ohne Probleme;
- Anzahl ändern
- Preis je nach Stüchlzahl finden/berechnen und wieder in Grid schreiben.

Aber Problem ist die 1. Line, die ich hinzugefügt habe...Program crasht immer, wenn ich diese Zeile bearbeiten will..

Kannst du bitte nochmal kontrollieren, wenn du Zeit hast?

ps: Jetzige Version ist im Anhang


danke für deine Mühe.
gruss
erkaN
 

Attachments

  • rows_CellsEdit_PlusOne-MinusOne.zip
    9.7 KB · Views: 133

kaplanerkan

Member
Licensed User
Longtime User
Hat sich erledigt, foldende Sub musste ich ändern, dann funktioniert es mit +1.

B4X:
Sub PlusOne_Click
Dim i, r, c, Answ As Int
   Dim txt As String
   
   If SelectedRow  >= 0 Then
      txt="Wollen Sie Anzahl +1 erhöhen?"&CRLF
      
      If Msgbox2(txt,"ATTENTION","Yes","Cancel","",Null) = DialogResponse.POSITIVE Then
         Dim Ver1, Ver2, Ver3, Ver4 As String
         
'         If SelectedRow < NumberOfRows - 1 Then
'            For r = SelectedRow To NumberOfRows - 2         'Beim +1 erhöhen brauche es nicht.....
            r = SelectedRow 
               For c = 0 To NumberOfColumns - 1
                  Select c
                     Case 0
                        Ver1 = GetView(r, c).Text      ' Jetzige Anzahl
'                        Msgbox ("Ver1 : " & Ver1,"")
                     Case 1
                        Ver2 = GetView(r, c).Text      ' Nummer des ARtikels
'                        Msgbox ("Ver2 : " & Ver2,"")
                     Case 2
                        Ver3 =    GetView(r, c).Text      ' Beschreibung des Artikels
'                        Msgbox ("Ver3 : " & Ver3,"")
                     Case 3
                        Ver4 = GetView(r, c).Text      ' Preis = Stück + (Preis/Stück) 
'                        Msgbox ("Ver4 : " & Ver4,"")      
                  End Select
               Next
'            Next
'         End If
      End If
   End If
   ' PlusOneAddieren (Anzahl , Preis)
   PlusOneAddieren (Ver1,Ver4)
End Sub
 
Top