请问如何做出象msn的那种有信息来的那种窗口弹出效果呢? 请问如何做出象msn的那种有信息来的那种窗口弹出效果呢?(delphi) 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 推荐一篇文章:http://www.microsoft.com/china/community/TechZone/TechArticle/TechDoc/vcsharpmsn.asp kingcom:我操死你妈!不要以为只有你会用马甲!我也会!不要以为你多牛,我鼠标一点就封了你! TO: glassesboy 谢谢了,给我一份吧. [email protected] THANK YOU 我也正需要啊,能不能也给我看看呢?![email protected]谢谢了 to glassesboy(glassesboy) 给我一份,谢谢啦 [email protected] 自己根据需要改写拉!unit Unit1;interfaceuses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls, StdCtrls;type TForm1 = class(TForm) Button1: TButton; Timer1: TTimer; procedure Button1Click(Sender: TObject); procedure Timer1Timer(Sender: TObject); procedure FormCreate(Sender: TObject); private { Private declarations } public { Public declarations } end;var Form1: TForm1; waitTime,oldtop,oldleft:integer;implementation{$R *.DFM}procedure TForm1.Button1Click(Sender: TObject);begin oldtop:=form1.Top ; oldleft:=form1.Left ; form1.Left:=screen.Width-form1.Width; form1.Top:=screen.Height ; timer1.Interval:=5; timer1.Enabled:=true;end;procedure TForm1.Timer1Timer(Sender: TObject);begin if waittime<100 then form1.Top:=form1.Top-2; if (waittime>500) and (waittime<600) then form1.Top:=form1.Top+2; waittime:=waittime+1; if waittime>600 then begin timer1.Enabled:=false; form1.Top:=oldtop; form1.Left:=oldleft; waittime:=0; end;end;procedure TForm1.FormCreate(Sender: TObject);begin waittime:=0;end; 请也给我一份先谢了[email protected] tcpc2003(tcpc)、[email protected]、[email protected]、 zyyjc() :发给你们了收吧 也给我一份吧,[email protected] 谢拉! 这可能是你想要的procedure ShowWindow(WHandle:HWND;DispMode:Integer);var Flag:array [0..11] of Int64;begin if DispMode=1 then begin //显示 Flag[0]:=AW_ACTIVATE+AW_HOR_POSITIVE+AW_VER_POSITIVE+AW_SLIDE;//左上至右下 滑行效果 Flag[1]:=AW_ACTIVATE+AW_HOR_NEGATIVE+AW_VER_POSITIVE+AW_SLIDE;//右上至左下 滑行效果 Flag[2]:=AW_ACTIVATE+AW_CENTER+AW_SLIDE; // 中心向四周 滑行效果 Flag[3]:=AW_ACTIVATE+AW_HOR_POSITIVE+AW_SLIDE; //左 至右 滑行效果 Flag[4]:=AW_ACTIVATE+AW_HOR_NEGATIVE+AW_SLIDE; //右至左 滑行效果 Flag[5]:=AW_ACTIVATE+AW_VER_POSITIVE+AW_SLIDE; //上至下 滑行效果 Flag[6]:=AW_ACTIVATE+AW_HOR_POSITIVE+AW_VER_POSITIVE+AW_BLEND;//左上至右下 淡入淡出 Flag[7]:=AW_ACTIVATE+AW_HOR_NEGATIVE+AW_VER_POSITIVE+AW_BLEND;//右上至左下 淡入淡出 Flag[8]:=AW_ACTIVATE+AW_HOR_POSITIVE+AW_BLEND; //左至右 淡入淡出 Flag[9]:=AW_ACTIVATE+AW_HOR_NEGATIVE+AW_BLEND; //右至左 淡入淡出 Flag[10]:=AW_ACTIVATE+AW_VER_POSITIVE+AW_BLEND; //上至下 淡入淡出 Flag[11]:=AW_ACTIVATE+AW_CENTER+AW_BLEND; //中心向四周 淡入淡出 end; if DispMode=2 then begin //关闭 Flag[0]:=AW_HIDE+AW_HOR_POSITIVE+AW_VER_NEGATIVE+AW_SLIDE;//左上至右下 滑行效果 Flag[1]:=AW_HIDE+AW_HOR_NEGATIVE+AW_VER_NEGATIVE+AW_SLIDE;//右上至左下 滑行效果 Flag[2]:=AW_HIDE+AW_CENTER+AW_SLIDE; // 中心向四周 滑行效果 Flag[3]:=AW_HIDE+AW_HOR_POSITIVE+AW_SLIDE; //左 至右 滑行效果 Flag[4]:=AW_HIDE+AW_HOR_NEGATIVE+AW_SLIDE; //右至左 滑行效果 Flag[5]:=AW_HIDE+AW_VER_NEGATIVE+AW_SLIDE; //上至下 滑行效果 Flag[6]:=AW_HIDE+AW_HOR_POSITIVE+AW_VER_NEGATIVE+AW_BLEND;//左上至右下 淡入淡出 Flag[7]:=AW_HIDE+AW_HOR_NEGATIVE+AW_VER_NEGATIVE+AW_BLEND;//右上至左下 淡入淡出 Flag[8]:=AW_HIDE+AW_HOR_POSITIVE+AW_BLEND; //左至右 淡入淡出 Flag[9]:=AW_HIDE+AW_HOR_NEGATIVE+AW_BLEND; //右至左 淡入淡出 Flag[10]:=AW_HIDE+AW_VER_POSITIVE+AW_BLEND; //上至下 淡入淡出 Flag[11]:=AW_HIDE+AW_CENTER+AW_BLEND; //中心向四周 淡入淡出 end; Randomize; AnimateWindow(WHandle,500,Flag[Random(6)]); {Windows下有一个函数AnimateWindow,在Delphi自带的Win32 API Help中是找不到的. 你可以在Delphi的编辑器中输入windows.等待代码向导出来,继续输入AnimateWindow就能看到 确实是存在的Win32 API,它的功能是在显示或者关闭窗体的时候产生动画,如从左向右开屏,从中心向周围开屏等. 语法:function AnimateWindow(hWnd: HWND; dwTime: DWORD; dwFlags: DWORD): BOOL; stdcall; 参数:hWnd : 想要显示动画窗体的句柄 dwTime : 动画时间数,单位毫秒 dwFlags : 显示方式,取值如下定义 1.AW_HOR_POSITIVE = $00000001; // 从左向右开屏 2.AW_HOR_NEGATIVE = $00000002; // 从右向左开屏 3.AW_VER_POSITIVE = $00000004; // 从上向下开屏 4.AW_VER_NEGATIVE = $00000008; // 从下向上开屏 5,AW_CENTER = $00000010; // 从中心向四周扩展,在关闭动画中则为从四周向中心收缩 6.AW_HIDE = $00010000; // 关闭时候与前面的定义组合使用,如AW_HIDE or AW_CENTER 7.AW_ACTIVATE = $00020000; // 与1-5组合,开屏使用 8.AW_SLIDE = $00040000; // 与1-5 + 6/7 组合,产生滑行效果 9.AW_BLEND = $00080000; // Win2000下使用,淡入淡出效果}end;procedure TFm_Ckcx.FormShow(Sender: TObject);begin ShowWindow(self.Handle,1);end; belllab(bell) :AnimateWindow是做不到MSN Messager那样的变速运动的窗口的 glassesboy(glassesboy):MSN Messager的窗口是变速运动吗?我觉得是匀速运动吧! 能否发给我一份:[email protected]谢过 问一个memo载入文件的问题!高手帮忙! 线程类中使用Txmldocument组件错误 求一个现在能用的邮件收发系统,源码(100分)delphi7 Delphi 2005-06专家榜 错误提示! 如果移动到指定的记录为活动记录? 一个毫无技术含量的问题 与数据库连接的问题 我的一个程序里添加SpeedButton,发现它不能显示Caption了,可把Enabled 属性改为False,就可以.有人遇到过这种情况么? 关于 Pop3 和 Smtp 协议...... 如何检测客户端配置的所有的IP地址,就像用IPCONFIG得到的结果一样。 怎么办??
http://www.microsoft.com/china/community/TechZone/TechArticle/TechDoc/vcsharpmsn.asp
给我一份,谢谢啦 [email protected]
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
ExtCtrls, StdCtrls;type
TForm1 = class(TForm)
Button1: TButton;
Timer1: TTimer;
procedure Button1Click(Sender: TObject);
procedure Timer1Timer(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;var
Form1: TForm1;
waitTime,oldtop,oldleft:integer;
implementation{$R *.DFM}procedure TForm1.Button1Click(Sender: TObject);
begin
oldtop:=form1.Top ;
oldleft:=form1.Left ;
form1.Left:=screen.Width-form1.Width;
form1.Top:=screen.Height ;
timer1.Interval:=5;
timer1.Enabled:=true;
end;procedure TForm1.Timer1Timer(Sender: TObject);
begin
if waittime<100 then
form1.Top:=form1.Top-2;
if (waittime>500) and (waittime<600) then
form1.Top:=form1.Top+2;
waittime:=waittime+1;
if waittime>600 then
begin
timer1.Enabled:=false;
form1.Top:=oldtop;
form1.Left:=oldleft;
waittime:=0; end;
end;procedure TForm1.FormCreate(Sender: TObject);
begin
waittime:=0;
end;
先谢了
[email protected]
procedure ShowWindow(WHandle:HWND;DispMode:Integer);
var Flag:array [0..11] of Int64;
begin
if DispMode=1 then begin
//显示
Flag[0]:=AW_ACTIVATE+AW_HOR_POSITIVE+AW_VER_POSITIVE+AW_SLIDE;//左上至右下 滑行效果
Flag[1]:=AW_ACTIVATE+AW_HOR_NEGATIVE+AW_VER_POSITIVE+AW_SLIDE;//右上至左下 滑行效果
Flag[2]:=AW_ACTIVATE+AW_CENTER+AW_SLIDE; // 中心向四周 滑行效果
Flag[3]:=AW_ACTIVATE+AW_HOR_POSITIVE+AW_SLIDE; //左 至右 滑行效果
Flag[4]:=AW_ACTIVATE+AW_HOR_NEGATIVE+AW_SLIDE; //右至左 滑行效果
Flag[5]:=AW_ACTIVATE+AW_VER_POSITIVE+AW_SLIDE; //上至下 滑行效果
Flag[6]:=AW_ACTIVATE+AW_HOR_POSITIVE+AW_VER_POSITIVE+AW_BLEND;//左上至右下 淡入淡出
Flag[7]:=AW_ACTIVATE+AW_HOR_NEGATIVE+AW_VER_POSITIVE+AW_BLEND;//右上至左下 淡入淡出
Flag[8]:=AW_ACTIVATE+AW_HOR_POSITIVE+AW_BLEND; //左至右 淡入淡出
Flag[9]:=AW_ACTIVATE+AW_HOR_NEGATIVE+AW_BLEND; //右至左 淡入淡出
Flag[10]:=AW_ACTIVATE+AW_VER_POSITIVE+AW_BLEND; //上至下 淡入淡出
Flag[11]:=AW_ACTIVATE+AW_CENTER+AW_BLEND; //中心向四周 淡入淡出
end;
if DispMode=2 then begin
//关闭
Flag[0]:=AW_HIDE+AW_HOR_POSITIVE+AW_VER_NEGATIVE+AW_SLIDE;//左上至右下 滑行效果
Flag[1]:=AW_HIDE+AW_HOR_NEGATIVE+AW_VER_NEGATIVE+AW_SLIDE;//右上至左下 滑行效果
Flag[2]:=AW_HIDE+AW_CENTER+AW_SLIDE; // 中心向四周 滑行效果
Flag[3]:=AW_HIDE+AW_HOR_POSITIVE+AW_SLIDE; //左 至右 滑行效果
Flag[4]:=AW_HIDE+AW_HOR_NEGATIVE+AW_SLIDE; //右至左 滑行效果
Flag[5]:=AW_HIDE+AW_VER_NEGATIVE+AW_SLIDE; //上至下 滑行效果
Flag[6]:=AW_HIDE+AW_HOR_POSITIVE+AW_VER_NEGATIVE+AW_BLEND;//左上至右下 淡入淡出
Flag[7]:=AW_HIDE+AW_HOR_NEGATIVE+AW_VER_NEGATIVE+AW_BLEND;//右上至左下 淡入淡出
Flag[8]:=AW_HIDE+AW_HOR_POSITIVE+AW_BLEND; //左至右 淡入淡出
Flag[9]:=AW_HIDE+AW_HOR_NEGATIVE+AW_BLEND; //右至左 淡入淡出
Flag[10]:=AW_HIDE+AW_VER_POSITIVE+AW_BLEND; //上至下 淡入淡出
Flag[11]:=AW_HIDE+AW_CENTER+AW_BLEND; //中心向四周 淡入淡出
end;
Randomize;
AnimateWindow(WHandle,500,Flag[Random(6)]);
{Windows下有一个函数AnimateWindow,在Delphi自带的Win32 API Help中是找不到的.
你可以在Delphi的编辑器中输入windows.等待代码向导出来,继续输入AnimateWindow就能看到
确实是存在的Win32 API,它的功能是在显示或者关闭窗体的时候产生动画,如从左向右开屏,从中心向周围开屏等.
语法:function AnimateWindow(hWnd: HWND; dwTime: DWORD; dwFlags: DWORD): BOOL; stdcall;
参数:hWnd : 想要显示动画窗体的句柄
dwTime : 动画时间数,单位毫秒
dwFlags : 显示方式,取值如下定义
1.AW_HOR_POSITIVE = $00000001; // 从左向右开屏
2.AW_HOR_NEGATIVE = $00000002; // 从右向左开屏
3.AW_VER_POSITIVE = $00000004; // 从上向下开屏
4.AW_VER_NEGATIVE = $00000008; // 从下向上开屏
5,AW_CENTER = $00000010; // 从中心向四周扩展,在关闭动画中则为从四周向中心收缩
6.AW_HIDE = $00010000; // 关闭时候与前面的定义组合使用,如AW_HIDE or AW_CENTER
7.AW_ACTIVATE = $00020000; // 与1-5组合,开屏使用
8.AW_SLIDE = $00040000; // 与1-5 + 6/7 组合,产生滑行效果
9.AW_BLEND = $00080000; // Win2000下使用,淡入淡出效果}
end;procedure TFm_Ckcx.FormShow(Sender: TObject);
begin
ShowWindow(self.Handle,1);
end;
AnimateWindow是做不到MSN Messager那样的变速运动的窗口的