说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

动态创建了多个StaticText,我想实现将任意一个StaticText拖动到另一个StaticText上后交换他们的几个属性,该如何做?

编辑:说三道四文库 发布时间:2018-01-19 01:51
HTML文档下载 WORD文档下载 PDF文档下载
动态创建了多个StaticText,我想实现将任意一个StaticText拖动到另一个StaticText上后交换他们的几个属性,该如何做?
  我主要是想实现拖动构件交换他们的属性,而他们的位置不变。
type
  TForm1 = class(TForm)
    Button1: TButton;
    procedure StaticDragDrop(Sender, Source: TObject; X, Y: Integer);
    procedure StaticDragOver(Sender, Source: TObject; X, Y: Integer;
      State: TDragState; var Accept: Boolean);
    procedure FormCreate(Sender: TObject);
  private
    Static1, Static2, Static3: TStaticText;
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.DFM}



procedure TForm1.StaticDragDrop(Sender, Source: TObject; X, Y: Integer);
begin
 if (TStaticText(Sender).Name <> TStaticText(Source).Name) then
    TStaticText(Sender).Color := TStaticText(Source).Color;
end;

procedure TForm1.StaticDragOver(Sender, Source: TObject; X, Y: Integer;
  State: TDragState; var Accept: Boolean);
begin
  if (TStaticText(Sender).Name <> TStaticText(Source).Name) then
    Accept := True;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  Static1 := TStaticText.Create(Self);
  Static1.Name := 'S1';
  Static1.Parent := Self;
  Static1.Color := clRed;
  Static1.Left := 10;
  Static1.Top := 10;
  Static1.Width := 100;
  Static1.Height := 30;
  Static1.DragMode := dmAutomatic;
  Static1.OnDragDrop := StaticDragDrop;
  Static1.OnDragOver := StaticDragOver;

  Static2 := TStaticText.Create(Self);
  Static2.Name := 'S2';
  Static2.Parent := Self;
  Static2.Color := clGreen;
  Static2.Left := 10;
  Static2.Top := 60;
  Static2.Width := 100;
  Static2.Height := 30;
  Static2.DragMode := dmAutomatic;
  Static2.OnDragDrop := StaticDragDrop;
  Static2.OnDragOver := StaticDragOver;

  Static3 := TStaticText.Create(Self);
  Static3.Name := 'S3';
  Static3.Parent := Self;
  Static3.Color := clBlue;
  Static3.Left := 10;
  Static3.Top := 110;
  Static3.Width := 100;
  Static3.Height := 30;
  Static3.DragMode := dmAutomatic;
  Static3.OnDragDrop := StaticDragDrop;
  Static3.OnDragOver := StaticDragOver;
end;
极路由加入海尔U+联盟 可跨品牌控制多款家居设备 《近匠》Amaze UI:做最懂中国程序员的开源HTML5框架 Testin CTO徐琨:要做测试领域的阿里云! TIOBE 2015年2月编程语言排行榜:JavaScript排名达历史最高点 机智云发布第二代GoKit开发板,兼容Arduino与Intel Edison 在线等待:语音聊天软件 禁止对象(图象,表格)的拖动,急急 请问斑竹,为什么这几天我的可用分一直不变? 得分问题 谁有用vc做的ping程序。 在线等待:哪有语音聊天的原理介绍或者提供语音聊天软件源代码下载的地方? 在线等待:哪有语音聊天的原理介绍或者提供语音聊天软件源代码下载的地方? 各位大哥,ADODataSet结合ComboBox.text的SQL语句怎么写? 如何显式调用扩展DLL中的函数? 一道英语题初中短文填空…… Mrs Jones is very busy ev 英语短文填空求解, do you help your mother w Do you often help your mo ()you often () (help) you 用干燥剂贴在墙上对付应经受潮起皮的地方有用吗?用哪 怎么区别干燥剂是硅胶还是生石灰的? 硅胶作为干燥剂比生石灰的优点有哪些 杭州46岁单身妈妈为儿子过得更好想重俄加强防范“黑寡妇”袭击日本能把俄罗斯“撬走”吗缅甸穆斯林赴邻国避难遇海难 或死伤惨本周四立冬秋天将继续 杭州日后或常雾晋剧《傅山进京》 展演“金陵五月风”根据导航“指示” “驴友”骑车上高速双休日有雨气温明显下降追尾后猛开1公里又弃车而逃 这辆辉腾五一长假 茅山半岛火了喜剧大爆炸重生之聂小倩大亨之路抗联1939重生之郡主威武太行奇峡群旅游严子陵钓台旅游天目大峡谷旅游灵隐旅游绍兴塔山旅游
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘