掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
StringGridのフォーカス移動・入力制限 (ID:31948)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
>StringGridでエンターキー押下で一つ下のセルに移動したい。 長さチェックを二人ともなぜかスルーしてるので追加 エンターキーで入力常態になってしまうのでそれを制御しないと 一つ下のセルに移動してすぐ入力常態になってしまうので エンターキーで入力常態にならないようにしてみた procedure TForm1.StringGrid1GetEditText(Sender: TObject; ACol, ARow: Integer; var Value: string); begin F1 := False; F2 := True; end; procedure TForm1.StringGrid1KeyPress(Sender: TObject; var Key: Char); begin case Key of #13: begin if F2 = False then begin if TStringGrid(Sender).Row < TStringGrid(Sender).RowCount-1 then begin TStringGrid(Sender).Row := TStringGrid(Sender).Row + 1; end; Key := #0; end; F2 := False; end; #8: begin end; '0'..'9': begin if F1 = True then Key := Char(0); end; else Key := #0; end; end; procedure TForm1.StringGrid1SetEditText(Sender: TObject; ACol, ARow: Integer; const Value: string); begin if Length(Value) > 2 then F1 := True else F1 := False; end;
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.