StringGrid セルの値のコピー

解決


・∀・  2010-01-22 03:48:53  No: 37132

お世話になります。

Delphi6使用です。

StringGridでCells[1, Row]に値を入力したときに
同時進行でCells[2, Row]にも同じ値を表示させたいのですが、
簡単なことだとは思うのですが、テンパっているせいなのか、
どのように処理して良いかまったく見当がつきません。

現在、KeyPressで 
Cells[2, Row] := Cells[1, Row] ;
とやっているのですが、1文字遅れて表示されます。
(腹話術のいっこく堂さんみたいです)

識者の方、どうかご助言頂けないでしょうか。
何とぞよろしくお願い致します。


TS  2010-01-22 05:27:48  No: 37133

KeyPressでは入力が確定されない場合があるので

procedure TForm1.StringGrid1SetEditText(Sender: TObject; ACol,
  ARow: Integer; const Value: String);
begin
  StringGrid1.Cells[2,ARow] := Value ;
end;


えっ  2010-01-22 05:28:12  No: 37134

起こりましたか? 
それは確かに奇妙は現象で、テンパる気も分かるような...
ジツはStringGridには"いっこく堂"さんが本当に棲んでいて、
そういう怪奇現象がたまに起きるんですよ。

....ジョウダンは横に置いといて、
OnKeyPressではなく、OnKeyUpイベントを使えば問題解決^^
でも、なぜOnKeyPressではそんなことが起きるのか、
それはよく考えれば分かること。(ん?よく考えなくても分かった?)


TS  2010-01-22 05:29:41  No: 37135

if ACol=1 then  を追加


・∀・  2010-01-22 17:45:26  No: 37136

・∀・です。
ご回答ありがとうございます!

>>TSさん
ありがとうございます!
思い描いた通りの動作をしました。
本当にありがとうございました!

>>えっさん
落ち着いてよく考えて判りました(^^;
ホント、お恥ずかしい限りです。
ありがとうございました!


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加