Pagina1 van 1
Forum

Welkom bij de Tweaking4All gemeenschapsforums!
Voor je gaat deelnemen, bekijk de Forum Regels!

Specifieke onderwerpen: Start het onderwerp met de naam van het programma of systeem.
Bijvoorbeeld “MacOS X – Jouw vraag“, of bijvoorbeeld “MS Word – Jouw Tip of Truc“.

Merk op: Omschakelen naar een andere taal zal niet werken als je een post aan het lezen bent aangezien er waarschijnlijk geen vertaling beschikbaar is.



Deel:
Meldingen
Alles wissen

[Opgelost] Lazarus - Hoe pas je het Font aan van een hint popup

1 Berichten
1 Gebruikers
0 Reactions
1,282 Bekeken
 Hans
(@hans)
Famed Member Admin
Deelgenomen: 12 jaar geleden
Berichten: 2869
Topic starter  

Om het font van een hint venster aan te passen, moeten we helaas een nieuwe class maken die de hints afhandelt - er is een geen eenvoudige instelling hiervoor. Dat klinkt natuurlijk moeilijk, maar dat is het gelukkig niet omdat we het meeste van de oorspronkelijke class kunnen overerven. (bron)

Het veranderen van een font kan handig zijn als je de hint vensters wilt aanpassen aan de style van jouw programma, of bijvoorbeeld als je een font wilt gebruiken met een vaste breedte (b.v. Courier of Monaco) als je tekst in een hint wilt uitlijnen.

Voorbeeld code (wel even de caption en de hint voor label1 invullen en ShowHint op TRUE zetten):

unit Unit1;
interface
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;
type
  TForm1 = class(TForm)
    Label1: TLabel;
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;
type
  TExtendedHint = class(THintWindow)
  constructor Create(AOwner: TComponent); override;
end;
var
  Form1: TForm1;
implementation
{$R *.dfm}
constructor TExtendedHint.Create(AOwner: TComponent);
begin
  inherited Create(AOwner);
  with Canvas.Font do
    begin
      Name := 'Courier New';
      Size := 13;
      Style := [fsBold, fsItalic]; // just an example
    end;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
  HintWindowClass := TExtendedHint;
end;
end.

   
BeantwoordenCiteren
Deel: