我是比较喜欢用MSN的因为它的信息提示比较独特所有的聊天软件都是弹出一个常规的WINDOWS对话框而它却好像是从任务栏里冒出来的想想了在DELPHI这样的纯OOP工具里加一个API应该不难实现花了十来分钟终于搞出来了以下是实现方法
建立一个APPLICATION将两个按钮放置到主窗体FROM中分别为button和button
buttoncaption:=′打开窗口′;
buttoncaption:=′关闭窗口′;
在file菜单项中的new中添加窗体form并且在project中的options里将form设置为Available froms
以下是FORM窗体内的控件及属性设置
formborderstyle:=bsNone;
添加panel
panelalign:=alclient;
panelbevellnner:=bvLowered;
可以在panel内添加你想要的文字
OK打开FORM的代码窗口代码如下
unit Unit;
interface
uses
Windows Messages SysUtils Variants Classes Graphics Controls Forms
Dialogs ExtCtrls jpeg StdCtrls;
type
TForm = class(TForm)
Panel: TPanel;
Image: TImage;
Label: TLabel;
procedure LabelClick(Sender: TObject);
procedure ImageClick(Sender: TObject);
private
{ Private declarations }
public
procedure Show;
procedure close;
{ Public declarations }
end;
var
Form: TForm;
implementation
procedure tformclose;
begin
if AnimateWindow(HandleAW_VER_POSITIVE+AW_HIDE)=false then
begin
showmessage(′窗体退出出错′);
free;
end;
inherited close;
end;
procedure tformShow;
begin
top:=;
left:=;
if AnimateWindow(HandleAW_VER_NEGATIVE)=false then
begin
showmessage(′窗体显示出错′);
free;
end;
inherited show;
end;
{$R *dfm}
以上红色的区域为具体实现特效的代码为FORM添加如下代码即可
unit Unit;
interface
uses
Windows Messages SysUtils Variants Classes Graphics Controls Forms
Dialogs StdCtrls;
type
TForm = class(TForm)
Button: TButton;
Button: TButton;
procedure ButtonClick(Sender: TObject);
procedure ButtonClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form: TForm;
implementation
uses Unit;
var
mesfrm:tform;
{$R *dfm}
procedure TFormButtonClick(Sender: TObject);
begin
mesfrm:=tformCreate(application);
mesfrmShow;
end;
procedure TFormButtonClick(Sender: TObject);
begin
mesfrmclose;
end;
end
OK运行程序你已经可以看到效果了不过记得将显示器设为*象素呵
由于制作时间较短只实现了基本的效果但稍加修改便可和MSN的信息提示一模一样