貼り付け不可について


joker  2005-07-20 10:10:28  No: 16458  IP: 192.*.*.*

TEditにクリップボードからの貼り付けを許可しないようにするにはどうすればよいのでしょうか?

編集 削除
deldel  2005-07-20 10:13:16  No: 16459  IP: 192.*.*.*

Edit1.ReadOnly := True;

編集 削除
joker  2005-07-20 10:24:04  No: 16460  IP: 192.*.*.*

え〜と、すいません。
言葉足らずでした。

TEditは数字のみの入力を許可しています。
その実現方法として、
if (Pos(Key,'0123456789'#8'')=0) then
begin
Key := #0;
        end;

編集 削除
joker  2005-07-20 10:24:04  No: 16461  IP: 192.*.*.*

え〜と、すいません。
言葉足らずでした。

TEditは数字のみの入力を許可しています。
その実現方法として、
if (Pos(Key,'0123456789'#8'')=0) then
begin
Key := #0;
        end;

編集 削除
joker  2005-07-20 10:25:36  No: 16462  IP: 192.*.*.*

すいません。猫が・・・^^;

え〜と、すいません。
言葉足らずでした。

TEditは数字のみの入力を許可しています。
その実現方法として、
if (Pos(Key,'0123456789'#8'')=0) then
begin
  Key := #0;
end;
と、上記のようにしています。
しかし、貼り付けを行うと、日本語などの2バイト文字も入力できてしまいます。
それを防ぐにはどうすれば良いのでしょうか?

編集 削除
deldel  2005-07-20 11:40:27  No: 16463  IP: 192.*.*.*

じゃあ、ここですかねぇ・・・
http://www2.big.or.jp/~osamu/Delphi/delphi-browse.cgi?index=018477

編集 削除
deldel  2005-07-20 11:42:35  No: 16464  IP: 192.*.*.*

スミマセン・・・リンク先に飛ばないようで・・・
新しいTEditを作成すればいいようです。

type
  TEdit2 = class(TEdit)
    procedure WMPaste(var Message: TMessage); message WM_PASTE;
  end;

procedure TEdit2.WMPaste(var Message: TMessage);
begin
  // 何も処理をしない
end;

編集 削除