Sign in Join
Wiki copytemporary

TEdit/ja

Deutsch · English · Français · Suomi · Русский · 日本語

TEdit は1行編集のコントロールである。コンポーネントパレットのStandardタブにある。

使い方

TEditはコンポーネントパレットのStandardタブにあるTEditアイコンをクリックし、フォームform上で1回クリックすることで加えることができる。これで、実行時にこの1行テキストフィールドを編集できる。

もし、このテキストを別の場所で使いたいときは、他のStringのように用いることができる。

例えば、もしTEdit Edit1をフォームに加えると、myString := Edit1.Text;を用いることができる。

もし、アプリケーションの起動時TEdit Edit1の中のデフォルトテキスト(例えば、Edit1)をほかのものを表示するようにしたいなら、以下のように進めることができる:

パスワード入力

TEditを簡単にパスワードを入力に用いることができる。このようにして、実際に入力したCharに代わり、パスワード文字を表示させる。

簡単な例:

テキストヒント

例えば、検索語を入力できる検索ボックスに入力したことはあるだろうか。そして使われてないときは、検索語ボックスはそれが何のためにあるか知らせるために「検索」のようなものを表示しているのを見たことはあるだろうか。そう、TEditはこの目的のためにTextHintと呼ばれるプロパティを持っている。TextHintは通常の「Text」が空でコントロールが使用されていない場合は、「検索」メッセージが表示される。たいていの部品ではTextHintはユーザーがタイプを始めると自動的にそこから消える。この例外はGTK2/3で、コントロールがフォーカスを得ると直ちに、中身を消し去る。

TextHintからのテキストは通常のテキストより、幾分灰色がかっており、そのためユーザーは何か特別なものと気づく。大方の人はこのインタフェースを直感的に理解する。

要望事項

TEditの埋め込まれたボタン/他のコントロール

あらゆる種類のコントロールをTEditに埋め込むことができるのはWinAPIの特性である。

考慮事項

delphi
button1.Parent:=edit1;
button1.Width:=20;
button1.Align:=alRight;
button1.Constraints.MaxHeight:=18; //edit1.Height;

このような制限ないと、入力されたテキストはボタンの「下側」に行ってしまう。

もし純粋なWinAPIを用いると、これは EM_SETMARGINS メッセージを使用することで行われる:

delphi
Uses
  Windows, ...

...

  SendMessage(Edit1.Handle, EM_SETMARGINS, EC_LEFTMARGIN or EC_RIGHTMARGIN, MakeLParam(0, button1.Width))

DelphiVCLはMarginsプロパティを提供するが、これは EM_SETMARGINS にはマップされず、VCLで異なる意味を持つ。

以下も参照のこと


From the Free Pascal wiki, page "TEdit/ja", as it stood on 2024-03-20 after a change by Ariben, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's Licensing page. If you have concerns about this material, message the admin.

Revision 2, last changed by WikiArchive .

Edited on wiki.freepascal.org by 1 person, 2024

From the official wiki's backup of 26 May 2024: who edited this page there, and when. Edits made there after that date were not recorded, and the earlier versions are not shown here; the main page says why.

WhenWhoWhat changed
AribenCreated page
Ariben
Ariben要望事項
Ariben使い方
AribenTEditの埋め込まれたボタン/他のコントロール
Ariben以下も参照のこと
Ariben使い方
Ariben使い方
Ariben以下も参照のこと

Talk about this page

Nobody has opened a bench for this page yet. Sign in to open one.