![]() |
StringGrid über mehrere Cols springen
Ich habe ein Stringgrid mit 8 Cols und 13 Rows.
Auf den Cols 3 und 7 möchte ich Resultate eingeben. alle Cols haben die Option - [goEditing] OnSelectCell auf den Cols 3 und 7 die Options + [goEditing] gesetzt OnSelectCell Ich möchte mit der Tabtaste #09 von Col 3 auf Col 7 springen. Also die Cols 4,5,6, überspringen. In Col 7 Daten eingeben und mit der Tabtaste wieder auf Col 3 auf der Nächsten Zeile springen. Mit der Tabtaste möchte ich nur die Col 3 und 7 ansteuern. gotabs habe ich aktiviert. Wie kann ich das realisieren. |
AW: StringGrid über mehrere Cols springen
Nur so als Idee, die Du ggfls. noch anpassen musst:
Delphi-Quellcode:
oder
procedure TForm1.StringGrid1KeyPress(Sender: TObject; var Key: Char);
begin case Key of #9 : begin if StringGrid1.Col = 3 then StringGrid1.Col := 7 else if StringGrid1.Col = 8 then begin StringGrid1.Col := 3; // Hier ist dann noch 'ne Sonderbehandlung der letzten Zeile im StringGrid erforderlich. StringGrid1.Row := StringGrid1.Row + 1; end; end; end; end;
Delphi-Quellcode:
(ungetestet hingedaddelt)
procedure TForm1.StringGrid1SelectCell(Sender: TObject; ACol, ARow: Integer; var CanSelect: Boolean);
begin if (aCol = 4) then begin StringGrid1.Col := 7; CanSelect := False; end else if (aCol = 7) then begin StringGrid1.Col := 3; // Hier ist dann noch 'ne Sonderbehandlung der letzten Zeile im StringGrid erforderlich. StringGrid1.Row := StringGrid1.Row + 1; CanSelect := False; end; end; |
AW: StringGrid über mehrere Cols springen
Hallo danke für die Hilfe. Es hat funktioniert. Aber die angesteuerte Col darf nicht die letzte in in der Row sein. Ich habe eine zusätzliche Col definiert. ColCount = 9, abgefragte Cols = 4 und 8 obwohl die Cols 3 und 7 betroffen sind.
Hier mein Code: procedure TForm1.SpieleKeyPress(Sender: TObject; var Key: Char); begin case Key of #9 : begin if Spiele.Col = 4 then Spiele.Col := 7 else if Spiele.Col = 8 then begin Spiele.Col := 3; // 1 if Spiele.Row = 12 then begin Spiele.Row := 1; end else begin Spiele.Row := Spiele.Row + 1; end; end; end; end; end; |
AW: StringGrid über mehrere Cols springen
Hallo Elmartino,
Du kannst Deinen Quellcode etwas übersichtlicher formatieren, wenn Du das Delphi-Symbol (= gelber Helm mit dem roten Kamm) vom Menü direkt über dem Editorfenster benutzt. Oder für neutrale Fälle als einfachen Code mit dem Symbol gleich links daneben (= auf weißem Blatt blaue eckige Klammern <>). Das geht übrigens auch nachträglich, wenn Du Deine Beiträge editierst. Gruß, Andreas |
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:02 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz