Проекта как такового нет, кинул на форму BalloonHint, Edit и попробовал их связать. Вот код:
Код:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls, ;
type
TForm1 = class(TForm)
Edit1: TEdit;
BalloonHint1: TBalloonHint;
procedure Edit1KeyPress(Sender: TObject; var Key: Char);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
var
Point: TPoint;
begin
if Key = '*' then
begin
Key := #0;
BalloonHint1.Description := 'Имя файла не должно содержать следующих знаков:'+№13+' *, /, \, ", ?, | ' ;
Point.X := Edit1.Width div 2;
Point.Y := 0;
BalloonHint1.ShowHint(Edit1.ClientToScreen(Point));
end;
end.
Delay и HideAfter я настраивал в инспекторе. Так, что "ломаться" нечему и все должно работать правильно. Но увы...