初心者で申し訳ありません
TEditでONKeyDown・ONKeyPressいずれかのイベントにて
VK_RETURNを判断して次の項目へ移動したいのですがうまく
動作してくれません。お手数ですが記述を教えてくださいますよう
お願いいたします。
うまく動作しなかった記述を下記にしすします。
if Key = VK_RETURN then ←ONKeyDownのイベントにて
if Key = Char(VK_RETURN) then ←ONKeyPressのイベントにて
if Key = VK_END then ←ONKeyDownのイベントにて正常に認識できました。
procedure TForm1.Memo1KeyPress(Sender: TObject; var Key: Char);
begin
if Key = #13 then Caption:='0000000';
end;
procedure TForm1.Memo1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if Key = Word(#13) then Caption:='1111111';
end;
これでどうでしょう?
どちらでも、反応してるみたいです。テンキーも受けるみたいですね。
マリンさん
早速のご返答ありがとうございます。
マリンさんの記述にそって対応してみましたが、
『TMemo』であれば正常に動作できますが『TEdit』では反応しませんでした。
『TEdit』でなにか他に設定が抜けているような感じがしています。
お手数をおかけしますが、初心者なのもでよろしくお願いいたします。
記述がなくて申し訳ありませんでしたがDelphi5にて開発を行っております。
失礼。集中力の欠如ですね。他に気が回っていると・・・。
で、D4 では、TEdit でも問題なく動いてるようですが?
D6 Personal でもOKですけど?
何か思ってることが双方で違うのかも・・?
>『TEdit』では反応しませんでした。
実際のコードは、どういう風に記述してます?
これかなぁ???
TWinControl.TabStop
TWinControl 参照
TabStop プロパティは,コントロールにタブ操作で移動できるかどうかを決めます。
property TabStop: Boolean;
説明
TabStop プロパティは,〔Tab〕キーによるコントロールへのアクセスを許可するかどうかを決められます。
TabStop が True ならば,コントロールがタブ順に入ります。TabStop が False ならばコントロールはタブ順に入らないため,ユーザーは〔Tab〕キーを押してもコントロールへ移動できません。
注意
フォームがほかのフォームを親として指定しないかぎり,TabStop はフォームにとって意味を持ちません。
マリンさんigyさんレスありがとうございました。
自分もいろいろ悩んでしまい、最初からコンポーネントを
張りなおして現象確認を行いながら対応しました。
どうしてそうなったかは不明ですが、
TEdit・OpenDialogとの関連によってこの現象が発生したようです?
具体的な内容は抑えるさとができませんでしたが・・・・
初回にマリンさんよりレスいただいた内容で正常に動作できるように
なりました。
大変ありがとうございました。今後ともよろしくお願い申し上げます。
ツイート | ![]() |