如何在桌面画一个圆圈,自左向右移动? 1、此圆圈不受任何程序的影响,永久在最前面。2、圆圈移动之后不会有残留痕迹,且桌面不会有闪烁感。请问可以实现吗?如果有高手可以解决,本人愿额外支付二百元报酬。扣扣一零九九七三。谢谢 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 提LZ省钱下面的例子支持窗体置顶, 透明, 颜色闪烁,位置右移和ESC推出.更进一步可以做消息响应和状态栏隐藏等.unit Unit12;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls;type TForm12 = class(TForm) procedure FormCreate(Sender: TObject); procedure FormKeyPress(Sender: TObject; var Key: Char); procedure FormDestroy(Sender: TObject); private tmr : TTimer; procedure tmrTimer(Sender: TObject); { Private declarations } public { Public declarations } end;var Form12: TForm12;implementation{$R *.dfm}procedure TForm12.FormCreate(Sender: TObject);begin //设置窗体位置及宽高 left := 0; top := 0; Width := 100; Height := 100; //窗体样式 置顶, 无边框, 透明 FormStyle := fsStayOnTop; BorderStyle := bsNone; TransparentColor := True; TransparentColorValue := Color; //创建及设置时钟 tmr := TTimer.Create(Self); tmr.OnTimer := tmrTimer; tmr.Interval := 200; tmr.Enabled := True;end;procedure TForm12.FormDestroy(Sender: TObject);begin tmr.Free;end;procedure TForm12.FormKeyPress(Sender: TObject; var Key: Char);begin //按ESC推出 if Key = Chr(27) then Close;end;procedure TForm12.tmrTimer(Sender: TObject);begin Canvas.Lock; if Canvas.Brush.Color = clred then Canvas.Brush.Color := clGreen else Canvas.Brush.Color := clred; Canvas.Ellipse(0,0, 100, 100); Canvas.Unlock; if left + Width + 10 < Screen.Width then Left := Left + 10 else Left := 0;end;end. 呃,谢谢大侠。但是我想要的是一个圆圈,中间部分是不能存在的,而且不能有Form的边框,请问应该怎么做?简单点说,它只是由一条线弯成的圈。关键是怎样能实现这样的线呢? procedure TForm12.tmrTimer(Sender: TObject);begin Canvas.Ellipse(0,0, 100, 100); if left + Width + 10 < Screen.Width then Left := Left + 10 else Left := 0;end; 【编译器优化】且看对象空指针调用对象方法 DBcombobox的问题 怎么判断两个URL是一样的主机名 咋做?谢谢 网络多媒体问题!急 delphi + ado + vfp, 怎样清空表中的记录! 强烈反对CSDN首页广告太多,散分!!!!! SQL 问题? 很简单!:) 关于memo的问题?(抢分啦!) 如何实现一个悬浮的圆圈? 初学。连数据库报错
更进一步可以做消息响应和状态栏隐藏等.unit Unit12;interfaceuses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls;type
TForm12 = class(TForm)
procedure FormCreate(Sender: TObject);
procedure FormKeyPress(Sender: TObject; var Key: Char);
procedure FormDestroy(Sender: TObject);
private
tmr : TTimer;
procedure tmrTimer(Sender: TObject);
{ Private declarations }
public
{ Public declarations }
end;var
Form12: TForm12;implementation{$R *.dfm}procedure TForm12.FormCreate(Sender: TObject);
begin
//设置窗体位置及宽高
left := 0;
top := 0;
Width := 100;
Height := 100; //窗体样式 置顶, 无边框, 透明
FormStyle := fsStayOnTop;
BorderStyle := bsNone;
TransparentColor := True;
TransparentColorValue := Color; //创建及设置时钟
tmr := TTimer.Create(Self);
tmr.OnTimer := tmrTimer;
tmr.Interval := 200;
tmr.Enabled := True;
end;procedure TForm12.FormDestroy(Sender: TObject);
begin
tmr.Free;
end;procedure TForm12.FormKeyPress(Sender: TObject; var Key: Char);
begin
//按ESC推出
if Key = Chr(27) then Close;
end;procedure TForm12.tmrTimer(Sender: TObject);
begin
Canvas.Lock;
if Canvas.Brush.Color = clred then
Canvas.Brush.Color := clGreen
else
Canvas.Brush.Color := clred;
Canvas.Ellipse(0,0, 100, 100);
Canvas.Unlock; if left + Width + 10 < Screen.Width then
Left := Left + 10
else
Left := 0;
end;
end.
procedure TForm12.tmrTimer(Sender: TObject);
begin
Canvas.Ellipse(0,0, 100, 100);
if left + Width + 10 < Screen.Width then
Left := Left + 10
else
Left := 0;
end;