Editに入力

解決


超初心者  2009-06-25 11:20:03  No: 34907  IP: 192.*.*.*

こんにちわ。
delphi初めて1週間の超初心者です!
Editに日付を入力させたいのですが、
20090625のように入力すれば2009/06/5となるようにしたいんです!!
どなたか助けてください。。。

編集 削除
DEKO  2009-06-25 12:21:42  No: 34908  IP: 192.*.*.*

こんにちは。

TEdit の代わりに、ツールパレットの Additional にある
TMaskEdit を使って下さい。

そして、オブジェクトインスペクタから、EditMask というのを見つけて、
ここに ">!9999/99/99;1; " をセットして下さい。

# 前後のダブルクォーテーションは不要です。
# 末尾に半角SPがあるので括ってあるだけです。

編集 削除
超初心者  2009-06-25 15:02:07  No: 34909  IP: 192.*.*.*

MaskEditを使って入力していったデータをSQLServerに保存して、
それを取り出すとき日付を指定しようとしたらエラーが出ました。。。

WHERE句に
' WHERE 日付 BETWEEN ' + IntToStr(MaskEdit1.Text) + ' AND ' + IntToStr(MaskEdit2.Text)
このように入力したんですができません。。。

編集 削除
超初心者  2009-06-25 15:02:08  No: 34910  IP: 192.*.*.*

MaskEditを使って入力していったデータをSQLServerに保存して、
それを取り出すとき日付を指定しようとしたらエラーが出ました。。。

WHERE句に
' WHERE 日付 BETWEEN ' + IntToStr(MaskEdit1.Text) + ' AND ' + IntToStr(MaskEdit2.Text)
このように入力したんですができません。。。

編集 削除
IntToStrとは如何に  2009-06-25 15:32:39  No: 34911  IP: 192.*.*.*

MaskEdit1.Textは文字列だから、IntToStrはないだろう。

文字列から日付への変換ならTO_DATE、あっ、これはOracleの場合か。
SQLServerの場合は違ったっけ?  あとは自分で調べて。

編集 削除
DEKO  2009-06-25 16:09:23  No: 34912  IP: 192.*.*.*

> ' WHERE 日付 BETWEEN ' + IntToStr(MaskEdit1.Text) + ' AND ' + IntToStr(MaskEdit2.Text)

単純に
' WHERE 日付 BETWEEN "' + MaskEdit1.Text + '" AND "' + MaskEdit2.Text + '"';
でどうでしょう?

編集 削除
超初心者  2009-06-25 16:47:16  No: 34913  IP: 192.*.*.*

ありがとうございます!!
てっきりIntegerだと思ってました。。。
試してみたいと思います。

編集 削除