7 Ekim 2024 Pazartesi

Tadvstring Grid Hint Boyutunu Sınırlama

 uses

  Windows, Forms, Controls, Graphics, StdCtrls, Types;


type

  TMultiLineHintWindow = class(THintWindow)

  public

    procedure Paint; override;

  end;


procedure TMultiLineHintWindow.Paint;

var

  TextRect: TRect;

begin

  // Hint penceresi boyutunu ayarla ve metni otomatik olarak çok satıra böl

  TextRect := ClientRect;

  Canvas.Font := Screen.HintFont;

  DrawText(Canvas.Handle, PChar(Caption), Length(Caption), TextRect, DT_LEFT or DT_WORDBREAK);

end;


procedure TForm1.FormCreate(Sender: TObject);

begin

  // OnShowHint olayı ile özelleştirilmiş hint sınıfını kullan

  Application.OnShowHint := @ShowCustomHint;

end;


procedure TForm1.ShowCustomHint(var HintStr: string; var CanShow: Boolean; var HintInfo: THintInfo);

begin

  // Özel hint penceresini devreye sok

  HintInfo.HintWindowClass := TMultiLineHintWindow;

  // Hint genişliği form boyutunu aşarsa, otomatik olarak çok satıra böl

  HintInfo.HintMaxWidth := Form1.Width - 50;  // Form genişliğine göre ayarlanıyor

end;


Share:

0 yorum:

Yorum Gönder

Blog Arşivi