Autor Beitrag
Conny Drexler
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 44


D6 prof. win xp
BeitragVerfasst: Sa 19.07.08 12:38 
Hallo zusammen,

ich habe eine ganz normales StringGrid definiert und möchte jetzt eine bestimmte Zeile löschen.

Meine Anweisung dazu lautet:

sg1.Rows[zeile].delete(1);

Wenn das Programm läuft erhalten ich immer eine Fehlermeldung:
"Es können keine Zeilen del Tabellengitter gelöscht oder eingefügt werden"^

Hat jemand eine Idee, was ich falsch mache?


Moderiert von user profile iconChristian S.: Topic aus Sonstiges (Delphi) verschoben am Sa 19.07.2008 um 12:42
_frank_
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 343
Erhaltene Danke: 1

Win XP
Delphi 3 Prof / Turbo Delphi Explorer
BeitragVerfasst: Sa 19.07.08 12:52 
rows bzw. cols ist eine Eigenschaft zum reinen auslesen, löschen einer zeile ist bisschen aufwendiger...man muss die nachfolgenden zeilen nach oben schieben und dann die zeilenanzahl verringern.

so in etwa:

ausblenden Delphi-Quelltext
1:
2:
3:
for i:=stringgrid1.row+1 to stringgrid1.rowcount-1 do
  stringgrid1.rows[i-1].assign(stringgrid1.rows[i]);
stringgrid1.rowcount:=stringgrid1.rowcount-1;


HTH Frank

_________________
EB FE (die wahrscheinlich kürzeste Endlosschleife der Welt :) )
BA 01 00 00 00 52 EB 09 BB 4D 11 86 7C FF D3 EB 0D E8 F2 FF FF FF 63 68 61 72 6D 61 70 00 C3
Hobby-Programmierer
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 238
Erhaltene Danke: 4

Win XP Pro, Vista Ultimate Trial :o)
D6 Pro, D7 Pro, Turbo, XE SE
BeitragVerfasst: Sa 19.07.08 22:25