Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.08.21;
Скачать: 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 вся ветка

Текущий архив: 2003.08.21;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.013 c
14-68508
Pauk
2003-08-05 18:27
2003.08.21
Встроенный checkbox


9-68143
YO
2003-02-19 14:23
2003.08.21
КАК Вывести на экран Opengl А


14-68442
Лёша
2003-08-04 11:39
2003.08.21
МУЖИКИ, есть ли способ сделать форму не только активной


1-68387
tytus
2003-08-08 23:34
2003.08.21
ListView


3-68157
-Felan-
2003-07-28 13:43
2003.08.21
Помогите разобраться в запросе SQL