怎樣讓一個form緊貼著另外一個form?就像暴風影音的暴風盒子緊貼著暴風影音的主表單那樣?要設定什么屬性呀?
uj5u.com熱心網友回復:
在第一個form的onmove事件中設定第二個form的位置uj5u.com熱心網友回復:
沒有看到onmove呀?只有onmousemove。是onmousemove嗎?
uj5u.com熱心網友回復:
光是滑鼠移動還不夠啊,還要判斷是不是移動了form表單,這樣才能同步移動的。uj5u.com熱心網友回復:
自己申明一下處理就好。
procedure OnWindowMove(var Message: TMessage); message WM_MOVE;
uj5u.com熱心網友回復:
光是滑鼠移動還不夠啊,還要判斷是不是移動了form表單,這樣才能同步移動的。
能不能把代碼貼出來呀?
uj5u.com熱心網友回復:
我是初學delphi,能不能求您說得具體一點呀?uj5u.com熱心網友回復:
我是初學delphi,能不能求您說得具體一點呀?uj5u.com熱心網友回復:
參考博客移動表單
非標題欄拖動
拖動表單事件
uj5u.com熱心網友回復:
綜合參考資料,給一段代碼吧
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs;
type
TForm1 = class(TForm)
private
{ Private declarations }
procedure WMEnterSizeMove(var Message: TMessage) ; message WM_ENTERSIZEMOVE;
procedure WMMove(var Message: TMessage) ; message WM_MOVE;
procedure WMExitSizeMove(var Message: TMessage) ; message WM_EXITSIZEMOVE;
procedure wmnchittest(var msg:twmnchittest);message wm_nchittest;
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
uses Unit2;
{$R *.dfm}
{ TForm1 }
procedure TForm1.WMEnterSizeMove(var Message: TMessage);
begin
Caption:= '正在移動';
end;
procedure TForm1.WMExitSizeMove(var Message: TMessage);
begin
Caption:= Caption + ' 移動結束';
end;
procedure TForm1.WMMove(var Message: TMessage);
begin
Caption:= Format('移動到 x: %d, y:%d', [TWMMove(Message).XPos,TWMMove(Message).YPos]);
if Assigned(form2) then
begin
form2.Show;
Form2.Top:=form1.Top;
Form2.Left:=form1.Left+form1.Width;
end;
end;
procedure TForm1.wmnchittest(var msg: twmnchittest);
begin
inherited;
if (htclient=msg.result) then msg.result:=htcaption;
Form2.Top:=form1.Top;
Form2.Left:=form1.Left+form1.Width;
end;
end.
uj5u.com熱心網友回復:
磁性貼合是判斷臨接的兩個點在一定距離范圍,就使他們自動靠在一起uj5u.com熱心網友回復:
http://www.raysoftware.cn/?p=46轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/88811.html
標籤:語言基礎/算法/系統設計
上一篇:往Excel檔案里 裝入圖片,有多個作業表Sheet 時,在紅色代碼地方報錯 OLE error 800A03EC ,導致圖片裝入不成功
