其它控件的最小化,最大化和还原.txt

来自「自己对DELPHI学习的一点体会」· 文本 代码 · 共 37 行

TXT
37
字号
其它控件的最小化,最大化和还原 (2001年5月26日) 

本站更新  分类:界面   作者:CoDelphi  推荐:   阅读次数:131  
(http://www.codesky.net)  

--------------------------------------------------------------------------------

-在窗体中加入TMainMenu ,加上3个菜单项:'最小化', '最大化'和 '还原';
-在窗体中加入TButton;
-在菜单项的OnClick事件中加入: 
{------}
procedure TForm1.Minimize1Click(Sender: TObject);
begin
ShowWindow(Button1.Handle, SW_SHOWMINIMIZED);
end;

procedure TForm1.Maximize1Click(Sender: TObject);
begin
ShowWindow(Button1.Handle, SW_SHOWMAXIMIZED);
end;

procedure TForm1.Restore1Click(Sender: TObject);
begin
ShowWindow(Button1.Handle, SW_RESTORE);
end;
{------}

运行程序,可以看到button通过菜单选项可以实现最小化,最大化和还原。当你把它最大化时,你可以看到window默认的最大化动画。

我们绕过了VCL 的封装性,直接使用WinAPI 函数ShowWindow 控制button。

这个方法可以使用在有句柄的任何控件,所以不可以使用在 SpeedButtons (它们来自TGraphicControl)。

使用TPanels 还可以模拟MDI程序。
 
 

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?