在PUBLIC中建立 procedure WMSysCommand(var Msg: TMessage);message WM_SYSCOMMAND;在实现中 procedure Tfm_report_main.WMSysCommand(var Msg: TMessage); begin //最小化 if Msg.WParam = SC_ICON then //执行相应的语句 //最大化 else begin if Msg.WParam =SC_ZOOM then //执行相应的语句 else inherited; end end;
2 自己编写WM_SYSCOMMAND消息的响应函数,wparam为SC_CLOSE等消息直接就屏蔽掉
procedure WMSysCommand(var Msg: TMessage);message WM_SYSCOMMAND;在实现中
procedure Tfm_report_main.WMSysCommand(var Msg: TMessage);
begin
//最小化
if Msg.WParam = SC_ICON then
//执行相应的语句
//最大化
else
begin
if Msg.WParam =SC_ZOOM then
//执行相应的语句
else
inherited;
end
end;
是直接在Object Inspector 中改吗?我没找到systembox呀?
我现在还太菜,请大家稍微说得详细一些,拜托了!谢谢!
form1.BorderIcons:=[];
就这么写吗?
属性
你设置一下就好了呀
form1.BorderIcons中的
bisystemmenu biminimize bimaximize 三项为false
你的窗体就没有了系统菜单、最小、最大或者:(看你想要做什么)如果你想在程序中控制这些事件,可以用 zqdshsy(jsfdkl) 的代码
如果只想使这些操作不产生效果就直接改form的borderstyle属性为bsdialog或bsnone
SamepleMenu: MHENU;
begin
SamepleMenu:= GetSystemMenu(Handle,False);
EnableMenuItem(SamepleMenu,SC_CLOSE,MF_BYCOMMAND+MF_DISABLED+MF_GRAYED);
//使标题栏菜单的“关闭”按钮失效
DeleteMenu(SamepleMenu,SC_CLOSE,MF)BYCOMMAND);
//“关闭”菜单删除
end;