« ■マルコフ連鎖 | トップページ | ■日経ソフトウェア2008年3月号 »

☆RichEditの行間を広げる。

TMemoを使ったプログラムで、行間が狭くて読みづらいのでなんとかならないかと言われたので、 調べてみるとTRichEditなら行間を広げられるということで試してみました。
uses RichEdit;

// 行間の設定
procedure SetGyokan(RichEdit: TRichEdit; bLineSpacingRule: Byte);
var
  ParaFormat2: TParaFormat2;
begin
  RichEdit.SelectAll;
  FillChar(ParaFormat2, SizeOf(ParaFormat2), 0);
  ParaFormat2.cbSize := SizeOf(ParaFormat2);
  ParaFormat2.dwMask := PFM_LINESPACING;
  ParaFormat2.bLineSpacingRule := bLineSpacingRule;
  SendMessage(RichEdit.Handle, EM_SETPARAFORMAT, 0, Longint(@ParaFormat2));
  RichEdit.SelStart := 0;
end;

// 行間を広げる。
procedure TForm1.Button1Click(Sender: TObject);
begin
  SetGyokan(RichEdit1, 1); // 行間を1.5倍にする。
end;

// 行間を戻す。
procedure TForm1.Button2Click(Sender: TObject);
begin
  SetGyokan(RichEdit1, 0); // 行間を標準にする。
end;


行間1.5倍

Re1



行間標準

Re2



Rich Edit
http://msdn2.microsoft.com/en-us/library/bb787605%28VS.85%29.aspx

PARAFORMAT2 Structure
http://msdn2.microsoft.com/en-us/library/bb787942.aspx

|

« ■マルコフ連鎖 | トップページ | ■日経ソフトウェア2008年3月号 »