お知らせ

電子会議

ライブラリ

パレット

Delphi FAQ検索

Delphi FAQ一覧

サンプル蔵





FDelphi FAQ
16番会議室「玉石混淆みんなで作るSample蔵」に寄せられたサンプル

"数値のみ入力可能なTStringGrid"



StringGridで 浮動小数 のみ入力可能にします
当該StringGridのKeyPressイベントハンドラを以下のように記述します。
(Integer対応にするには#46の部分を削除するだけ)
仕様は、 
- は頭にしか入らない
0..9と . しか入力を受け付けない

procedure TForm1.StringGrid1KeyPress(Sender: TObject; var Key: Char);
begin
   case key of
      #48..#57,#8:begin end;
      #45:begin
             with sender as TStringGrid do
             begin
                if (Pos(#45,cells[col,row])<>0) or
                   (TEdit(sender).selstart<>1) then Key:=#0;
             end;
          end;
      #46:begin
             with sender as TStringGrid do
             begin
                if pos(#46,cells[col,row])<>0 then key:=#0;
             end;
          end;
   else key:=#0;
   end;
end;
nifty:FDELPHI/MES/8/03606 の くるりんパパさんのソースを参考にしました。
☆☆☆ サンプル蔵ブラウザUp!see nifty:FDELPHI/LIB/5/116  ☆☆☆
                                 98/05/02(土) 11:13 凛(MXB01744)

Original document by 凛              氏 ID:(MXB01744)


ここにあるドキュメントは NIFTY SERVEの Delphi Users' Forum の16番会議室「玉石混淆みんなで作るSample蔵」に投稿されたサンプルです。これらのサンプルはボーランド株式会社がサポートする公式のものではありません。また、必ずしも動作が検証されているものではありません。これらのサンプルを使用したことに起因するいかなる損害も投稿者、およびフォーラムスタッフはその責めを負いません。使用者のリスクの範疇でご使用下さい。

Copyright 1996-2002 Delphi Users' Forum