Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Общие вопросы > Красивый шрифт


Автор: Rock 24.2.2005, 16:34
Значит рисую в заголовке окна таким вот макаром:
Код

procedure TForm1.WMNCPaint(var Msg: TWMNCPaint);
var
  ACanvas: TCanvas;
begin
  inherited;
  ACanvas := TCanvas.Create;
  try
    ACanvas.Handle := GetWindowDC(Form1.Handle);
    with ACanvas do
     begin
      Brush.Color := clActiveCaption;
      Font.Name := 'Tahoma';
      Font.Size := 8;
      Font.Color := clred;
      Font.Style := [fsItalic, fsBold];
      TextOut(GetSystemMetrics(SM_CYMENU) + GetSystemMetrics(SM_CXBORDER),
        Round((GetSystemMetrics(SM_CYCAPTION) - Abs(Font.Height)) / 2) + 1, ' Text');
    end;
  finally
    ReleaseDC(Form1.Handle, ACanvas.Handle);
    ACanvas.Free;
  end;
  end;

Но после диактивизации окна (э... слово само вылезло ) эта надпись исчезает... как сделать чтоб она там вечно висела?
Может есть другие способы? smile плиз

Автор: SoWa 24.2.2005, 16:51
Т.к. окно двигается, то и канва сдвигается => рисунок исчезает.
Решение: при передвижении окна- перерисовывай заголовок.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)