在DELPHI中如何开发类似《网络蚂蚁》中悬浮窗口?

flyknight2 2001-08-02 11:39:07
在DELPHI中如何开发类似《网络蚂蚁》中悬浮窗口?
...全文
858 47 打赏 收藏 转发到动态 举报
写回复
用AI写文章
47 条回复
切换为时间正序
请发表友善的回复…
发表回复
xlq1068 2001-08-14
  • 打赏
  • 举报
回复
>>
soff 2001-08-14
  • 打赏
  • 举报
回复
你指的是悬浮窗口?
Ormus 2001-08-14
  • 打赏
  • 举报
回复
有一个现成控件,可惜我忘了在哪里下载了?
soff 2001-08-14
  • 打赏
  • 举报
回复
发现一个问题,当我把主窗口hide到托盘以后,任务栏还是有标题,实在分特。
soff 2001-08-14
  • 打赏
  • 举报
回复
还没有得出答案吗?小弟试了一下下面的程序,没有问题,始终最上,不会在任务栏显示标题,主窗口最小化时悬浮窗口不受影响。

unit Unit2;

interface

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

type
TfrmPop = class(TForm)
procedure FormMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
private
{ Private declarations }
public
{ Public declarations }
procedure CreateParams(var Params: TCreateParams); override;
end;

var
frmPop: TfrmPop;

implementation

{$R *.dfm}


procedure TfrmPop.CreateParams(var Params: TCreateParams);
begin
inherited CreateParams(Params);
with Params do
begin
ExStyle := ExStyle or WS_EX_TOPMOST or WS_EX_TOOLWINDOW;
WndParent := 0;
end
end;

procedure TfrmPop.FormMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
ReleaseCapture;
Perform(WM_SYSCOMMAND,$F012,0);
end;

end.
lifenqidelphi 2001-08-11
  • 打赏
  • 举报
回复
gz
xlq1068 2001-08-11
  • 打赏
  • 举报
回复
to hety(hety):
》》只需要把主程序放在系统盘中,
如何放请指明,谢谢
xlq1068 2001-08-10
  • 打赏
  • 举报
回复
>>
xlq1068 2001-08-10
  • 打赏
  • 举报
回复
>>
jackylee 2001-08-10
  • 打赏
  • 举报
回复
gz
gototop99 2001-08-10
  • 打赏
  • 举报
回复
gigi
sundayboys 2001-08-09
  • 打赏
  • 举报
回复
要移动Form2是吧,等晚上回来贴出来,偶现在要陪同学学电脑去:(不去还不行:(
xlq1068 2001-08-09
  • 打赏
  • 举报
回复
>>
xlq1068 2001-08-09
  • 打赏
  • 举报
回复
问题就是如何移动form2,
所有的代码都没有做到这一点
happy1123 2001-08-09
  • 打赏
  • 举报
回复
??
xlq1068 2001-08-09
  • 打赏
  • 举报
回复
>>你只需要把主程序放在系统盘中
能否解释一下如何做
sundayboys 2001-08-09
  • 打赏
  • 举报
回复
to hety(hety):
将Form设置为stayontop,并不能保证始终在上边的。不过你的那段代码移动窗体是管用的。
xlq1068 2001-08-09
  • 打赏
  • 举报
回复
to hety(hety):
》》只需要把主程序放在系统盘中,
如何放请指明,谢谢
hety 2001-08-09
  • 打赏
  • 举报
回复
没那么复杂,你只需要把主程序放在系统盘中,那个悬浮窗口设为stayontop,然后在悬浮窗口中加入随意拖动的代码:
private
procedure WMNCHitTest(var Msg: TWMNCHitTest); message wm_NCHitTest;

implementation
procedure TForm1.WMNCHitTest(var Msg:TWMNCHitTest);
begin
inherited;
if (htClient = Msg.Result) then Msg.Result := htCaption;
end;
vv_www 2001-08-08
  • 打赏
  • 举报
回复
GZ
加载更多回复(27)

1,594

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 网络通信/分布式开发
社区管理员
  • 网络通信/分布式开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧