帮个忙吧?(200分)

  • 主题发起人 主题发起人 bbcse
  • 开始时间 开始时间
B

bbcse

Unregistered / Unconfirmed
GUEST, unregistred user!
哪位大虾能帮小弟写一个小程序:<br>一个普通窗口,点击最大化按钮后,窗口变成只剩下标题栏(实际上执行showwindow(form1.handle,sw_minimize)),此时须使窗口处于屏幕顶部,并且是最上层窗口以及去掉系统菜单。再次点击最大化按钮后,窗口恢复原状且恢复系统菜单。<br>如果有可能的话,请将程序寄到我的信箱zouguodong@126.com
 
g<br>太懒了点吧?
 
不是我太懒,本人是新手,水平很低,实在写不出来(我懂一点原理,但实际中总是弄不好),如果你们认为很简单的话,何不费点工夫呢,既利人又利己。如果你们真的不想帮忙的话,那就算了。
 
这里的大虾只喜欢解决具体问题,不喜欢帮别人做作业.<br>你应该自己去尝试,有什么具体问题可以来问.这样对你有好处.
 
小虾给你一个变通的办法吧.<br><br>unit main;<br><br>interface<br><br>uses<br>&nbsp; Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs;<br><br>type<br>&nbsp; TForm1 = class(TForm)<br>&nbsp; private<br>&nbsp; &nbsp; procedure WMGETMINMAXINFO(var message:TWMGetMinMaxInfo);message WM_GeTMINMAXINFO;<br>&nbsp; &nbsp; { Private declarations }<br>&nbsp; public<br>&nbsp; &nbsp; { Public declarations }<br>&nbsp; end;<br><br>var<br>&nbsp; Form1: TForm1;<br><br>implementation<br><br>{$R *.DFM}<br><br>procedure TForm1.WMGETMINMAXINFO(var message:TWMGetMinMaxInfo);<br>begin<br>&nbsp; message.MinMaxInfo.ptMaxSize.x:=0;<br>&nbsp; message.MinMaxInfo.ptMaxSize.y:=0;<br>&nbsp; message.MinMaxInfo.ptMaxPosition.x:=0;<br>&nbsp; message.MinMaxInfo.ptMaxPosition.y:=0;<br>// &nbsp;Caption:=format('%d',[clientheight]);<br>&nbsp; if ClientHeight&lt;=0 then<br>&nbsp; &nbsp; EnableMenuItem(GetSystemMenu(Handle, False), SC_CLOSE, MF_BYCOMMAND or MF_GRAYED)<br>&nbsp; else<br>&nbsp; &nbsp; EnableMenuItem(GetSystemMenu(Handle, False), SC_CLOSE, MF_ENABLED);<br>end;<br><br>end.<br><br>
 
呵呵,截获个message呀,已答问题里有的说
 
不必。<br>只要Height:=0即可实现没菜单效果。<br>在OnResize事件中做手脚。
 
一种简单原理的麻烦方法<br>虚拟控制菜单,把对话框设置成bsNone<br>在处理Form的OnResize<br>这样就可以做成象Winamp一样的头标菜单了
 
多人接受答案了。
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
D
回复
0
查看
2K
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
后退
顶部