Sources
Delphi Russian Knowledge Base
DRKB - база знаний по Дельфи в рунете, составленная Виталием Невзоровым

Как узнать количество видимых строчек в TMemo?

01.01.2007

function LinesVisible(Memo: TMemo): integer; 
Var 
  OldFont : HFont; 
  Hand : THandle; 
  TM : TTextMetric; 
  Rect  : TRect; 
  tempint : integer; 
begin 
  Hand := GetDC(Memo.Handle); 
  try 
    OldFont := SelectObject(Hand, Memo.Font.Handle); 
    try 
      GetTextMetrics(Hand, TM); 
      Memo.Perform(EM_GETRECT, 0, longint(@Rect)); 
      tempint := (Rect.Bottom - Rect.Top) div 
         (TM.tmHeight + TM.tmExternalLeading); 
    finally 
      SelectObject(Hand, OldFont); 
    end; 
  finally 
    ReleaseDC(Memo.Handle, Hand); 
  end; 
  Result := tempint; 
end; 
Previous page:
Проверить, можно ли отменить последнее действие в TMemo
Top:
DRKB
Next page:
TMainMenu, TPopupMenu