Entwickler-Ecke

Grafische Benutzeroberflächen (VCL & FireMonkey) - Frage zu StringGrid


morpheus090682 - Mo 16.05.11 21:55
Titel: Frage zu StringGrid
Moin erst mal!
Habe eine frage zu StringGrid.
Ich habe einen StringGrind wo in der ersten Spalte ein paar Räume stehen. Nun möchte ich eine Variable hochzählen lassen bis die erste leere Zelle kommt.
Leider habe ich keine ahnung wie ich das anfangen soll.
Warscheinlich ist das wieder mal so einfach das ich da selber nicht drauf komme.

Moderiert von user profile iconNarses: Überflüssige Zeilenumbrüche/Leerzeilen entfernt.
Moderiert von user profile iconNarses: Topic aus Sonstiges (Delphi) verschoben am Mo 16.05.2011 um 23:07


Narses - Mo 16.05.11 22:06

Moin und :welcome: im Forum!

user profile iconmorpheus090682 hat folgendes geschrieben Zum zitierten Posting springen:
Ich habe einen StringGrind wo in der ersten Spalte ein paar Räume stehen. Nun möchte ich eine Variable hochzählen lassen bis die erste leere Zelle kommt.
Wie sehen denn deine Versuche aus? Schon was probiert oder eine Ahnung, wie das ungefähr aussehen sollte? Vielleicht etwas Code zur Hand? ;)

cu
Narses


morpheus090682 - Mo 16.05.11 22:47

Nein ich habe leider noch nichts!
Ich habe keine ahnung wo und wie ich anfangen soll!
Ich Progrmiere auch nicht viel mit Delphi mache mehr in C für AVR leider brauche ich jetzt aber ein Programm was mir dann die Anzahl der gefüllten Spallten über USB(Seriele Schnittstelle sendet).

Moderiert von user profile iconNarses: Überflüssige Zeilenumbrüche/Leerzeilen entfernt.


Gerd Kayser - Mo 16.05.11 22:54

Beispiel:

Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
procedure TForm1.Button1Click(Sender: TObject);
var
  Schleife : integer;
  Zeile    : integer;
begin
  Zeile := - 1;
  StringGrid1.Cells[00] := 'Beschriftung';
  StringGrid1.Cells[01] := 'A';
  StringGrid1.Cells[02] := ' ';  // "leere" Zelle
  StringGrid1.Cells[03] := 'C';
  StringGrid1.Cells[04] := 'D';
  for Schleife := StringGrid1.RowCount - 1 downto 0 do
    if Trim(StringGrid1.Cells[0, Schleife]) = '' then
      Zeile := Schleife;
  if Zeile > - 1 then
    Label1.Caption := 'Zeile ' + IntToStr(Zeile) + ' (Null-basiert) '
    + 'enthält die erste leere Zelle in der ersten Spalte.'
  else
    Label1.Caption := 'Keine leere Zelle gefunden.';
end;