同步窗体移动

方法2

unit Unit1;

interface

uses
  Winapi.Windows, Winapi.Messages,
System.SysUtils, System.Variants,
  System.Classes,
Vcl.Graphics,
  Vcl.Controls, Vcl.Forms, Vcl.Dialogs,
Vcl.ExtCtrls;

type
  TForm1
= class(TForm)
    Panel1:
TPanel;
    procedure
FormShow(Sender: TObject);
  private
    procedure WMMOVE(var Msg: TMessage); message WM_MOVE;
 
public
    {
Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

uses Unit2;

procedure TForm1.FormShow(Sender:
TObject);
begin
  Form2.Visible
:= true;
end;

procedure TForm1.WMMOVE(var Msg: TMessage);
begin
  inherited;
  try
    Form2.Parent:=Panel1;
 
  Form2.Left:=0;
    Form2.Top:=0;
   
Form2.Align:=alClient;

  except

 
end;
end;

end.

方法1

unit Unit1;

interface

uses
  Winapi.Windows, Winapi.Messages,
System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
 
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.ExtCtrls;

type
  TForm1 = class(TForm)
    Panel1:
TPanel;
  private
 
 procedure WMMOVE(var Msg: TMessage);  message
WM_MOVE;
  public
   
{ Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

uses Unit2;

procedure TForm1.WMMOVE(var Msg: TMessage);
begin
  inherited;
  try
    form2.Width :=
 Panel1.Width;
    form2.Height := Panel1.Height;

    form2.left := Form1.left +
Panel1.Left;
    form2.Top :=
Form1.Top + Panel1.Top;
  except

 
end;
end;
end.

来自为知笔记(Wiz)

附件列表

同步窗体移动

时间: 2024-08-11 18:06:09

同步窗体移动的相关文章

C#窗体加载和控件加载不同步导致控件闪烁

窗体加载和控件加载不同步导致的控件闪烁现象:// 代码块加在父窗体中的任意位置,解决窗体加载和控件加载不同步导致的控件闪烁问题        protected override CreateParams CreateParams        {            get            {                CreateParams cp = base.CreateParams;                cp.ExStyle |= 0x02000000;     

二个窗体同步移动

原文地址:https://www.cnblogs.com/maweiwei/p/12330585.html

BOM 窗体相关属性以及页面可见区域的获取方式

1 在IE Safari Oper Chrome 都提供了screenLeft和screenTop属性: screenLeft : 相对于屏幕左边的距离 screenTop : 相对于屏幕上边的距离 Firefox则在 screenX, screenY属性中提供形同的窗口位置信息,Safari,Chrome同样也支持这两个属性.Oper虽然支持但是两个属性表现不一致, 尽量避免在Oper中使用screenTop和screentLeft 兼容各种浏览器可以使用这种方式: var leftPos =

C#串口通信—向串口发送数据,同步接收返回数据

最近写C#串口通信程序,系统是B/S架构.SerialPort类有一个DataReceived事件,用来接收串口返回的数据,但这种方式在C/S架构下很好用,但B/S就不好处理了.所以写了一个同步模式接收返回数据的方法,不使用DataReceived事件.经过测试,可以正常使用(不支持多线程调用). 一.Machine类 1.Machine类有一个静态变量,定义如下: private static SerialPort serialPort = null; 2.向串口发送数据,同步接收返回数据的方

登录同步多个副本如何实现的拷贝数发生变化分布式

以前的博客<RAFT中成员变更过程以及失败回滚分析 >,分析了副本变更的背景知识和RAFT提出的joint consensus的实现方式.可惜的是,RAFT在其论文和博士论文中都没有给出joint consensus的严格证明,我们在实现oceanbase的乱序日志方案时.初期參照RAFT的joint consensus,但总能找到协议漏洞,于是採用 case by case的方式逐步改动协议,直到我们几个人再 也找不到漏洞的时候,还是不能证明方案设计的正确性. 忘了哪位Google的大神说过

Binders 与 Window Tokens(窗体令牌)

原文地址:http://www.androiddesignpatterns.com/2013/07/binders-window-tokens.html 安卓的一项核心设计思想是希望能提供一个不须要依赖中央检验部门来检验程序请求的开放平台.为此,Android使用了程序沙盒和Linux的进程分离来防止程序以无法控制和不安全的方式訪问系统内部或者其它程序.这样的架构是开发人员与使用者共同选择的:既不须要额外的保护来防止恶意程序,同一时候系统要自己主动的处理好全部事情. 在非常长一段时间我对这样的安

C#:确保绑定到同一数据源的多个控件保持同步

下面的代码示例演示如何使用 BindingSource 组件,将三个控件(两个文本框控件和一个 DataGridView 控件)绑定到 DataSet 中的同一列.该示例演示如何处理BindingComplete 事件,并确保当一个文本框的文本值更改时,会用正确的值更新其他文本框和 DataGridView 控件. 该示例使用 BindingSource 来绑定数据源和控件.或者,可以直接将控件绑定到数据源,并从窗体的 BindingContext 检索用于绑定的 BindingManagerB

Android应用程序窗体设计框架介绍

在Android系统中,一个Activity相应一个应用程序窗体.不论什么一个Activity的启动都是由AMS服务和应用程序进程相互配合来完毕的.AMS服务统一调度系统中全部进程的Activity启动,而每一个Activity的启动过程则由其所属进程来完毕.AMS服务通过realStartActivityLocked函数来通知应用程序进程启动某个Activity: frameworks\base\services\java\com\android\server\am\ ActivityStac

PNG透明窗体全攻略(控件不透明)

http://blog.csdn.net/riklin/article/details/4417247 看好了,这是XP系统,未装.net.我的Photoshop学的不太好,把玻璃片弄的太透了些,如果你们有好的美术,再加上这种技术,肯定会如鱼得水.下面就来详细说说它的制作过程吧:     第 一步:在VC6中使用GDI+:你得从网上弄个GDI+ for XP的库,大约500K.如果找不到的话,找我QQ要吧,我会把这个窗口的源程序一起发给你的.把它解压后,将所有文件还包括子目录中的文件复制到你的项