zoukankan      html  css  js  c++  java
  • 实现窗体随着鼠标移动(控件)--《用delphi开发共享软件》-15.1任务管理器

    private  //窗体移动;
    OldPos,NewPos:TPoint;
    bMove:Boolean;
    
    procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton;
    Shift: TShiftState; X, Y: Integer);
    begin
    bMove:=True;
    OldPos:=ClientToScreen(Point(X,Y));
    end;
    
    procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X,
    Y: Integer);
    begin
    if not bMove then Exit;
    NewPos:=ClientToScreen(Point(X,Y));
    Left:=Left+NewPos.X-OldPos.X;
    Top:=Top+NewPos.Y-OldPos.Y;
    OldPos:=NewPos;
    end;
    
    procedure TForm1.FormMouseUp(Sender: TObject; Button: TMouseButton;
    Shift: TShiftState; X, Y: Integer);
    begin
    bMove:=False;
    end;  

    拓展:以此让一个控件可移动;

     1 //变量
     2    isMouseDown : boolean ; //是否拖拽
     3     posX,posY : Integer; //拖动开始时候的坐标
     4 
     5 procedure TForm1.edt2MouseDown(Sender: TObject; Button: TMouseButton;
     6   Shift: TShiftState; X, Y: Integer);
     7 begin
     8   isMouseDown := True;                         //告诉窗体我要拖了
     9   posX := Mouse.CursorPos.X  - edt2.Left ;   //记录开始的位置
    10   posY := Mouse.CursorPos.Y  - edt2.Top  ;   //
    11 end;
    12 
    13 procedure TForm1.edt2MouseMove(Sender: TObject; Shift: TShiftState; X,
    14   Y: Integer);
    15 begin
    16   if isMouseDown  then                          //鼠标是按下状态(要拖)
    17   begin
    18     edt2.Left := Mouse.CursorPos.X - posX ;   //新的位置
    19     edt2.Top := Mouse.CursorPos.Y - posY ;
    20   end;
    21 end;
    22 
    23 procedure TForm1.edt2MouseUp(Sender: TObject; Button: TMouseButton;
    24   Shift: TShiftState; X, Y: Integer);
    25 begin
    26   isMouseDown := False;                          //告诉窗体我拖完了
    27 end;
    控件移动

     

  • 相关阅读:
    html优化
    HTML练习(网页计算器)
    hdu--4574 Bombs(dfs)
    Robots at Warehouse(搜索+vector的使用)
    poj 2111 Millenium Leapcow(记忆化搜索)
    Codeforces Round #408 (Div. 2) C. Bank Hacking(暴力啊!暴力)
    Gym
    Gym
    浙江省赛--D
    浙江省赛--C
  • 原文地址:https://www.cnblogs.com/rogge7/p/4460787.html
Copyright © 2011-2022 走看看