亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? umain.pas

?? 下面又是翻譯: 韓國人 Silhwan Hyun 改寫。 TMagnetic Class 是一個 Delphi 版本的"cMagneticWnd" 類
?? PAS
字號:
unit uMain;

interface

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

type
  TfrmParent = class(TForm)
    btnShowChild: TButton;
    btnClose: TButton;
    btnCreateChild: TButton;
    btnShowChild2: TButton;
    btnShowChild3: TButton;
    procedure FormShow(Sender: TObject);
    procedure FormDestroy(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure btnShowChildClick(Sender: TObject);
    procedure btnCloseClick(Sender: TObject);
    procedure btnCreateChildClick(Sender: TObject);
    procedure btnShowChild2Click(Sender: TObject);
    procedure btnShowChild3Click(Sender: TObject);
  private
    { Private declarations }
    
  public
    { Public declarations }
    procedure WMEnterSizeMove(var Msg: TMessage); message WM_ENTERSIZEMOVE;
    procedure WMSizing(var Msg: TMessage); message WM_SIZING;
    procedure WMMoving(var Msg: TMessage); message WM_MOVING;
    procedure WMExitSizeMove(var Msg: TMessage); message WM_EXITSIZEMOVE;
    procedure WMSysCommand(var Msg: TMessage); message WM_SYSCOMMAND;
    procedure WMCommand(var Msg: TMessage); message WM_COMMAND;
  end;

var
  frmParent: TfrmParent;
 // MagneticWnd: TMagnetic;   // defined in Magnetic unit

implementation

{$R *.dfm}

uses uSub1, uSub2, uSub3;

const
   NumForms = 5;

var
   MagneticWndProc : TSubClass_Proc;
   dummyHandled : boolean;
   ChildForms : array[1..NumForms] of TfrmChild1;


//---------------------- Custom Message Handling procedures ----------------------

procedure TfrmParent.WMEnterSizeMove(var Msg: TMessage);
begin
   inherited;

   if Assigned(MagneticWndProc) then
      MagneticWndProc(Self.Handle, WM_ENTERSIZEMOVE, Msg, dummyHandled);
end;

procedure TfrmParent.WMSizing(var Msg: TMessage);
var
   bHandled: Boolean;
begin
   if not Assigned(MagneticWndProc) then
      inherited
   else
      if MagneticWndProc(Self.Handle, WM_SIZING, Msg, bHandled) then
         if not bHandled then
            inherited;
end;

procedure TfrmParent.WMMoving(var Msg: TMessage);
var
   bHandled: Boolean;
begin
   if not Assigned(MagneticWndProc) then
      inherited
   else
      if MagneticWndProc(Self.Handle, WM_MOVING, Msg, bHandled) then
         if not bHandled then
            inherited;
end;

procedure TfrmParent.WMExitSizeMove(var Msg: TMessage);
begin
   inherited;

   if Assigned(MagneticWndProc) then
      MagneticWndProc(Self.Handle, WM_EXITSIZEMOVE, Msg, dummyHandled);
end;

procedure TfrmParent.WMSysCommand(var Msg: TMessage);
begin
   inherited;

   if Assigned(MagneticWndProc) then
      MagneticWndProc(Self.Handle, WM_SYSCOMMAND, Msg, dummyHandled);
end;

procedure TfrmParent.WMCommand(var Msg: TMessage);
begin
   inherited;

   if Assigned(MagneticWndProc) then
      MagneticWndProc(Self.Handle, WM_COMMAND, Msg, dummyHandled);
end;

//------------------ end of Custom Message Handling procedures -------------------


// procedure to subclass ChildForms window procedure for magnetic effect.
function SubFormWindowProc(Wnd: HWND; Msg, wParam, lParam: Integer): Integer; stdcall;
var
  Handled: boolean;
  Message_: TMessage;
  OrgWndProc: Integer;
begin
   Result := 0;

   if not Assigned(MagneticWndProc) then
   begin
      Result := CallWindowProc(Pointer(OrgWndProc), Wnd, Msg, wParam, lParam);
      exit;
   end;

   OrgWndProc := GetWindowLong(Wnd, GWL_USERDATA);
   if (OrgWndProc = 0) then
      exit;

   Message_.WParam := wParam;
   Message_.LParam := lParam;
   Message_.Result := 0;

   if (Msg = WM_SYSCOMMAND) or (Msg = WM_ENTERSIZEMOVE) or (Msg = WM_EXITSIZEMOVE) or
       (Msg = WM_WINDOWPOSCHANGED) or (Msg = WM_COMMAND)then
   begin
      Result := CallWindowProc(Pointer(OrgWndProc), Wnd, Msg, wParam, lParam);
      MagneticWndProc(Wnd, Msg, Message_, dummyHandled);
   end else if (Msg = WM_MOVING) or (Msg = WM_SIZING) then
   begin
      MagneticWndProc(Wnd, Msg, Message_, Handled);
      if Handled then
      begin
         Result := Message_.Result;
         exit;
      end else
         Result := CallWindowProc(Pointer(OrgWndProc), Wnd, Msg, wParam, lParam);
   end else if (Msg = WM_DESTROY) then
   begin
      if Assigned(MagneticWnd) then
         MagneticWnd.RemoveWindow(Wnd);
      Result := CallWindowProc(Pointer(OrgWndProc), Wnd, Msg, wParam, lParam);
   end else
      Result := CallWindowProc(Pointer(OrgWndProc), Wnd, Msg, wParam, lParam);
end;


procedure TfrmParent.btnCreateChildClick(Sender: TObject);
var
  i : integer;
  OrgWndProc: Integer;
begin
  if Assigned(ChildForms[1]) then  // already created child forms ?
     exit;

  for i := 1 to NumForms do
  begin
    ChildForms[i] := TfrmChild1.Create(Self);
    ChildForms[i].Caption := 'Magnetic Child1-' + intToStr(i);
    ChildForms[i].Left := 100 + i * 35;
    ChildForms[i].top := 100 + i * 35;
    ChildForms[i].Show;

    if not MagneticWnd.AddWindow(ChildForms[i].Handle, self.Handle, MagneticWndProc) then
       exit;

  // Subclassing sub form, the original Window Proc is saved in its own 32-bit value space.
    OrgWndProc := GetWindowLong(ChildForms[i].Handle, GWL_WNDPROC);
    SetWindowLong(ChildForms[i].Handle, GWL_USERDATA, OrgWndProc);  // Save Original Window Proc
    SetWindowLong(ChildForms[i].Handle, GWL_WNDPROC, Integer(@SubFormWindowProc));
  end;
end;

procedure TfrmParent.btnShowChild2Click(Sender: TObject);
begin
   frmChild2.Show;
end;

procedure TfrmParent.btnShowChild3Click(Sender: TObject);
begin
   frmChild3.Show;
end;

procedure TfrmParent.btnShowChildClick(Sender: TObject);
var
  i : integer;
begin
  for i := 1 to NumForms do
  begin
    if ChildForms[i] <> nil then
       if (not ChildForms[i].Visible) then
           ChildForms[i].Show;
  end;

  if (not frmChild2.Visible) then
      frmChild2.Show;

  if (not frmChild3.Visible) then
      frmChild3.Show;
end;

procedure TfrmParent.FormCreate(Sender: TObject);
begin
  // Create a TMagnetic Class
  MagneticWnd := TMagnetic.Create;

end;

procedure TfrmParent.FormDestroy(Sender: TObject);
begin
 // Release TMagnetic Class
  MagneticWnd.Free;

end;

procedure TfrmParent.FormShow(Sender: TObject);
begin
  if Assigned(MagneticWnd) then
  begin
    // Set Snap width
     MagneticWnd.SnapWidth := 15;
    // Register main window as a serviced window of TMagnetic Class
     MagneticWnd.AddWindow(Self.Handle, 0, MagneticWndProc);
  end;
end;

procedure TfrmParent.btnCloseClick(Sender: TObject);
begin
   Close;
end;

end.

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
偷拍一区二区三区| 国产成人在线观看免费网站| 老司机精品视频线观看86| 成人的网站免费观看| 欧美高清视频一二三区 | 亚洲老妇xxxxxx| 裸体健美xxxx欧美裸体表演| 波波电影院一区二区三区| 欧美一级黄色片| 亚洲综合激情网| 岛国精品在线观看| 精品国内片67194| 亚洲sss视频在线视频| 国产成人精品一区二| 5566中文字幕一区二区电影| 亚洲日本在线a| va亚洲va日韩不卡在线观看| 久久女同性恋中文字幕| 日本成人在线看| 欧美色偷偷大香| 亚洲欧美日韩在线| av中文字幕不卡| 国产精品久久久久久户外露出 | 精品乱人伦小说| 亚洲成人av福利| 欧美影院一区二区三区| 亚洲激情欧美激情| 色狠狠一区二区| 亚洲激情男女视频| 欧美性猛交xxxx黑人交| 亚洲一二三四久久| 欧美亚洲综合色| 亚洲成av人片在线| 在线观看91av| 麻豆成人在线观看| 精品国产sm最大网站免费看| 欧美aa在线视频| 日韩欧美另类在线| 激情五月激情综合网| 精品欧美一区二区久久| 另类综合日韩欧美亚洲| 久久精品一区二区三区不卡牛牛 | 久久久99久久精品欧美| 国产真实乱子伦精品视频| 久久综合色之久久综合| 国产精品亚洲视频| 国产精品毛片a∨一区二区三区| 成人午夜碰碰视频| 亚洲欧美日韩久久| 欧美日韩一区二区三区四区五区 | 免费人成黄页网站在线一区二区| 在线综合+亚洲+欧美中文字幕| 天天亚洲美女在线视频| 精品国产伦一区二区三区观看体验| 久久激情五月婷婷| 国产精品成人免费精品自在线观看| av在线播放一区二区三区| 一区二区三区四区乱视频| 91精品午夜视频| 国产成人精品免费在线| 夜夜嗨av一区二区三区中文字幕| 欧美精品久久久久久久久老牛影院 | 激情六月婷婷久久| 亚洲人精品一区| 日韩丝袜美女视频| 懂色av中文字幕一区二区三区| 中文字幕日韩一区二区| 在线不卡的av| 成人综合婷婷国产精品久久免费| 一区二区三区免费看视频| 91精品国产麻豆国产自产在线| 国产精品自在在线| 亚洲18色成人| 中文字幕五月欧美| 日韩免费视频线观看| 色综合天天在线| 六月婷婷色综合| 一区二区三区加勒比av| 久久久久综合网| 3d动漫精品啪啪一区二区竹菊| 懂色av一区二区夜夜嗨| 日韩高清国产一区在线| 亚洲精品久久嫩草网站秘色| 久久久美女毛片| 91精品在线一区二区| av电影在线观看一区| 美国欧美日韩国产在线播放| 亚洲靠逼com| 中文字幕一区二区三区不卡| 精品久久久久香蕉网| 欧美三级韩国三级日本一级| 国产宾馆实践打屁股91| 久色婷婷小香蕉久久| 亚洲bt欧美bt精品| 一区二区三区不卡视频| 国产精品视频一区二区三区不卡| 欧美一区二区三区色| 在线亚洲一区观看| 成人免费电影视频| 国产一区二区三区黄视频| 青青草91视频| 亚洲成av人**亚洲成av**| 亚洲人成网站影音先锋播放| 欧美极品少妇xxxxⅹ高跟鞋| 欧美xxxxx牲另类人与| 91精品国产综合久久婷婷香蕉 | 蜜桃av噜噜一区二区三区小说| 亚洲综合视频在线观看| 亚洲天堂2016| 亚洲丝袜美腿综合| 中文字幕免费一区| 国产日韩综合av| 国产精品人妖ts系列视频| 国产亚洲综合在线| 国产亚洲精久久久久久| 精品电影一区二区三区| 精品国产91久久久久久久妲己| 欧美一二区视频| 欧美xxxxx牲另类人与| 精品国产三级电影在线观看| 久久色在线视频| 日本一区二区三区四区| 中文字幕一区二区三区视频| 国产精品国产成人国产三级| 最新国产成人在线观看| 樱花影视一区二区| 午夜精品成人在线| 久色婷婷小香蕉久久| 国产精品正在播放| 粉嫩嫩av羞羞动漫久久久| 成人高清视频在线观看| 色婷婷亚洲精品| 欧美丰满嫩嫩电影| 欧美tk—视频vk| 欧美国产日本韩| 亚洲人妖av一区二区| 亚洲午夜一二三区视频| 免费日韩伦理电影| 成人少妇影院yyyy| 欧美日韩亚洲高清一区二区| 欧美第一区第二区| 日本一区二区成人在线| 艳妇臀荡乳欲伦亚洲一区| 麻豆专区一区二区三区四区五区| 国产一区91精品张津瑜| youjizz久久| 欧美人动与zoxxxx乱| 久久久久久久网| 一个色综合网站| 狠狠色狠狠色综合日日91app| 大胆亚洲人体视频| 欧美高清性hdvideosex| 国产日韩欧美激情| 亚洲狠狠爱一区二区三区| 国内久久精品视频| 色哟哟一区二区三区| 日韩免费观看高清完整版 | 91黄视频在线观看| 欧美一级生活片| 中文字幕亚洲一区二区av在线| 日韩av高清在线观看| 99久久精品国产毛片| 日韩一区二区三区在线观看 | 日韩精品一二三四| 高清在线成人网| 91精品国产福利| 亚洲免费在线观看| 韩国成人精品a∨在线观看| 欧美午夜精品一区| 亚洲国产高清在线| 国内外成人在线| 欧美高清视频一二三区| 亚洲欧美日韩久久| 高清国产一区二区| 欧美大胆一级视频| 亚洲精品五月天| 国产高清精品久久久久| 日韩视频123| 视频一区国产视频| 色婷婷综合久久| 国产精品日韩成人| 国产一区二区三区日韩| 欧美www视频| 青青国产91久久久久久| 欧洲精品视频在线观看| 国产精品电影一区二区| 国产精品一二三区在线| 精品欧美一区二区三区精品久久 | 99热在这里有精品免费| 欧美国产精品一区二区| 国产精品99久久久久久久女警| 欧美一区二区大片| 日韩二区三区四区| 欧美视频在线一区二区三区 | 欧美一区二区在线观看| 亚洲成av人片一区二区三区| 欧亚洲嫩模精品一区三区| 一区二区在线免费| 色婷婷精品大在线视频| 亚洲欧美另类久久久精品|