form标题的标题栏操作?另外还有一个问题详见内?请大家都来看看(100分)

  • 主题发起人 主题发起人 jumphigh
  • 开始时间 开始时间
J

jumphigh

Unregistered / Unconfirmed
GUEST, unregistred user!
form标题的标题栏操作?另外还有一个问题详见内?请大家都来看看<br>1.对标题栏操作<br>&nbsp;修改close图标<br>&nbsp;添加图标<br>&nbsp;....<br><br>2.想在程序中实现点击按钮程序最小化,采取入下方法<br><br>procedure Tbar.FormClose(Sender: TObject; var Action: TCloseAction);<br>begin<br>action:=caMinimize; &nbsp; &nbsp; //结果并不是我所要的最小化到任务栏,而是最下化到<br><br>end; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;//屏幕左下脚<br><br><br><br>使用 ShowWindow()函数<br>可是试过所有Parameters<br>均只能实现最小化到屏幕左下脚<br><br>why?
 
<br>2.SendMessage(Handle,WM_SYSCOMMAND,SC_ICON,0);<br>
 
多谢<br>等第一个问题解决了<br>我会给您加分
 
如果想要改标题栏的内容,要响应 &nbsp;WM_NCPAINT &nbsp;的消息事件<br>此时 wParam是 handle of update region( 包括了整个窗口的区域)<br>而WM_PAINT中的wParam只是除去标题栏和边框的HDC<br>ok?<br>&nbsp;
 
我对delphi的消息机制不是很熟<br><br>能讲的清楚点吗,最好给个例子<br><br>wParam是那的参数
 
TForm1 = class(TForm)<br>&nbsp; private<br>&nbsp; &nbsp; ...<br>&nbsp; &nbsp; procedure WMNCPaint(var Message: TMessage); message WM_NCPAINT;//这一行要自己加!<br>&nbsp; ...<br>end;<br><br>procedure TForm1.WMNCPaint(var Message: TMessage);<br>...<br>begin<br>&nbsp; hrgn:=Message.wParam;<br>&nbsp; ...<br>&nbsp; ..<br>end;<br><br>您需要对Windows API及DC有一定的了解<br>ok?
 
能不能再详细点<br>我对API仅仅是会用,不熟呀<br>拜托了<br><br>DC又是什么东东<br>请指教
 
有一个TTrayIcon控件,你找来看看,会有帮助的
 
多人接受答案了。
 
后退
顶部