delphi 窗口显示和隐藏的问题

2025-02-07 17:33:13
推荐回答(3个)
回答1:

可以使用delphi 的消息机制SendMessage()
说明: 调用一个窗口的窗口函数,将一条消息发给那个窗口。除非消息处理完毕,否则该函数不会返回SendMessage所包含4个参数:

1. hwnd 32位的窗口句柄窗口可以是任何类型的屏幕对象,因为Win32能够维护大多数可视对象的句柄

2. wMsg 用于区别其他消息的常量值,这些常量可以是Windows单元中预定义的常量,也可以是自定义的常量

3. wParam 通常是一个与消息有关的常量值,也可能是窗口或控件的句柄

4. lParam 通常是一个指向内存中数据的指针。由于WParm、lParam和Pointer都是32位的,因此,它们之间可以相互转换
隐藏窗口的wMsg值是: WM_SHOWWINDOW 当隐藏或显示窗口时发送此消息给这个窗口

SendMessage(form1的句柄, WM_SHOWWINDOW,0,0);

回答2:

用2个按钮 属性里Modalresule设为mrok 和mrcancel Form2的创建写成一个函数 有返回值
function form2show:boolean;
var
Form2:TForm;
begin
Form2:=Tform2.Create(self);
if form2.ShowModal=mrok then
result:=true
else
result:=false;
end;
Form1里面
if form2show=true then
form1.show;
记得给分 有疑问+QQ448912

回答3:

procedure TForm2.Button1Click(Sender: TObject);
begin
Form1.Show;
Close;
end;