Вниз
Скачать: CL | DM;

Как програмно показать hint компонента TEdit   Найти похожие ветки 

← →
~Dim~ ©   (2003-08-06 14:31) [0]

Как програмно показать hint компонента TEdit


← →
Игорь Шевченко ©   (2003-08-06 14:34) [1]

На скорую руку слепил:
unit main;

interface

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls;

type
TForm1 = class(TForm)
Edit1: TEdit;
Button1: TButton;
procedure Button1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
FMyHintWindow : THintWindow;
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.Button1Click(Sender: TObject);
var
ARect : TRect;
Ext : SIZE;
DC : HDC;
OldFont : HFONT;
begin
ARect.TopLeft := Edit1.ClientToScreen(Point(5, 5));
DC := GetDC(0);
try
OldFont := SelectObject(DC, Screen.HintFont.Handle);
try
GetTextExtentPoint32 (DC, PChar(Edit1.Hint), Length(Edit1.Hint), Ext);
finally
SelectObject(DC, OldFont);
end;
finally
( 0, DC)
На скорую руку слепил:
unit main;

interface

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls;

type
TForm1 = class(TForm)
Edit1: TEdit;
Button1: TButton;
procedure Button1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
FMyHintWindow : THintWindow;
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.Button1Click(Sender: TObject);
var
ARect : TRect;
Ext : SIZE;
DC : HDC;
OldFont : HFONT;
begin
ARect.TopLeft := Edit1.ClientToScreen(Point(5, 5));
DC := GetDC(0);
try
OldFont := SelectObject(DC, Screen.HintFont.Handle);
try
GetTextExtentPoint32 (DC, PChar(Edit1.Hint), Length(Edit1.Hint), Ext);
finally
SelectObject(DC, OldFont);
end;
finally
ReleaseDC (0, DC);
end;
ARect.Right := ARect.Left + Ext.cx;
ARect.Bottom := ARect.Top + Ext.cy;
FMyHintWindow.ActivateHint (ARect, Edit1.Hint);
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
FMyHintWindow := HintWindowClass.Create(Self);
end;

end.


Как гасить его - отдельный вопрос.


← →
Семен Сорокин ©   (2003-08-06 14:34) [2]

THintWindow -> CalcHintRect, ActivateHint, ReleaseHandle + F1



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.011 c
3-68199
Flint
2003-07-28 13:27
2003.08.21
Изменение таблицы в Interbase


14-68462
Nick-From
2003-08-06 14:46
2003.08.21
Internet Explorer


4-68599
bkv
2003-06-19 17:03
2003.08.21
Чем отличаются функции?


14-68556
VEG
2003-08-04 20:20
2003.08.21
На каком основании форум показывает/скрывает в


3-68150
Sergeyy
2003-07-25 13:23
2003.08.21
DBGrid внутри DBCtrlGrid




   Наверх