記事カテゴリ

ユーザー機能

カウンター


 2017年6月23日(金) 19:22 JST

[Delphi] 2行表示のリストを作成する

  • 記事を友だちにメール
  • 印刷用ページ
  • 投稿者:
  • 表示回数
    2,775

2行表示のリストを作成するには、OnDrawItem イベントと OnMeasureItem イベントを使用します。
以下のステップで行います。

  1. OnMeasureItemイベントで2行分表示するための高さを確保します。
  2. OnDrawItemイベントでCanvasにテキストを描画します。
  3. Styleを「lbOwnerDrawVariable」に変更します。(自分で中身を書き換えますよ!という定義)

この方法は、TCheckListBox でも使用できます。(2行目が固定で“2行目”になっているので、お好みに合わせて変更してください。 また、Styleを「lbOwnerDrawVariable」に変更するのを忘れないでください。)

[Delphi] ボタンのキャプションを2行にする

  • 記事を友だちにメール
  • 印刷用ページ
  • 投稿者:
  • 表示回数
    5,237

ボタンのキャプションを2行表示したいと思ったことはありませんか?
実はボタンのキャプションを2行にするのはすごく簡単です。しかし、コンポーネントにしないで実現することは難しいのでコンポーネントを作成してみます。
作り方は、TButtonを継承したボタンを作成します。このボタンのCreateParamをオーバーライドします。
ここでウィンドウ作成パラメータ(Style)にBS_MULTILINEという値を付けl加えることで、2行表示ができるようになります。

注 コンポーネントの作成は[コンポーネント]メニューの新規作成から行えます。

[Delphi] 数値をカンマ編集する

  • 記事を友だちにメール
  • 印刷用ページ
  • 投稿者:
  • 表示回数
    9,344

カンマ編集するにはFormat関数を使う方法がありますが、簡単に行うには以下のどちらかの関数を使用します。

  • FormatFloat
  • FormatCurr

具体的には以下のように指定します。

FormatCurr('#,', 123456)

Format関数を使うよりもずっと簡単に、制御できるのでとっても便利です。

[Delphi] フリガナを自動で入力する (for Win32)

  • 記事を友だちにメール
  • 印刷用ページ
  • 投稿者:
  • 表示回数
    4,603

WM_IME_COMPOSITION メッセージが発生したときに、ImmGetCompositionString 関数を使ってFEP (IME など) が持つフリガナを取得します。

[Delphi] Enterキーで次のフィールドに移動する

  • 記事を友だちにメール
  • 印刷用ページ
  • 投稿者:
  • 表示回数
    15,932

コンポーネントのKeyPressイベントを使います。
KeyPressイベントでEnterキーが押されたときに、次のコントロールに移動するWindowsのメッセージを送ってフォーカスを移動させます。
任意のコントロールにフォーカスを移動させる場合には、コントロール名.SetFocusを使用します。

procedure Edit1KeyPress(var Key: Char);
begin
  if (Ord(Key) = VK_RETURN) and (Shift = []) then
  begin
    // Enterキーが押されたら、次フィールドへ移動する。
    // Delphi関数を使う方法
    SelectNext(ActiveControl, GetKeyState(VK_SHIFT) >= 0, true);
    // ...Windows Messageを使用する方法
    //SendMessage(Handle, WM_NEXTDLGCTL, Ord(GetKeyState(VK_SHIFT) < 0), 0);
    // 通常のEnterキーの処理をしないようにクリアしてしまおう。
    Key := #0;
  end;
end;
最初 | 前へ | 304305306307308309310 | 次へ | 最後

サイトカレンダー

サイトカレンダーをスキップ

2017年 06月
«
»
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30

新着情報

記事 新着(24時間)

-

コメント 新着(2日)

-

トラックバック 新着(2日)

-

リンク 新着(2週)

新しいリンクはありません

ファイル (14日)