我将系统的托盘,放入自已的FORM后发现不能设置托盘的位置,请问如何设置(300分)????(300分)

X

xialin2

Unregistered / Unconfirmed
GUEST, unregistred user!
我将系统的托盘,放入自已的FORM后发现不能设置托盘的位置,我用SETWINDOWPOS但只是<br>显示一下又回到,右上角了.请指点.
 
试试在OnPaint中SetWindowPos()
 
我都看不懂是什么意思?
 
你是把整个任务拦放到自己的Form中了,还是只放了TrayIcon那一小块?
 
我两个都试过了,将整个任务拦放到自己的Form中时,它还是在它的老位置,如果,FORM缩小,就看一到了,<br>如果将TrayIcon放在FORM中,则只在右上角,缩小一点FORM就看不到了.
 
不在右上角呀。<br><br>procedure TForm1.Button1Click(Sender: TObject);<br>begin<br>&nbsp; h:=FindWindowEx(FindWindow('Shell_TrayWnd',nil),0,'TrayNotifyWnd',nil);<br>&nbsp; Windows.SetParent(h,Handle);<br>&nbsp; SetWindowPos(h,HWND_BOTTOM,100,100,200,25,0);<br>end;<br><br>在Form的OnSize中用SetWindowPos()调整位置。
 
这样做可以吗?<br><br>1 parent 一般是在 Pre_create 时确定。<br>2 如果它的父窗口对它的通知消息进行了处理,这样做后这些消息无法得到正确处理。
 
还是不可以,我按你的代码,在DELPHI7,中试了一下,但,就是如我所说的,只是,闪了一下,<br>就不见了,如果将FORM最大化发现这出现在右上角。您试了没有
 
我用D5,没有问题。
 
在Form的OnReSize中用SetWindowPos()调整位置。
 
我的操作系统是WIN2KSERVER,我会在DELPHI5下试一下,不过我想,可能是窗口风格的问题,<br>就象,设了,ALCLIENT就只能是最大化,想改变不是设一下,高度就可以的,要改属性,<br>
 
我在WIN2000下,DELPHI7,还没有办法,<br>请各位帮一下
 
你要做到什么效果啊,不明白
 
就是要把系统托盘放在程序的指定位置
 
为什么这么少人呢现在
 
小弟问一个很菜的问题,怎样将应用程序的图标放入Windows的托盘。<br>
 

Similar threads

D
回复
0
查看
751
DelphiTeacher的专栏
D
D
回复
0
查看
752
DelphiTeacher的专栏
D
D
回复
0
查看
600
DelphiTeacher的专栏
D
D
回复
0
查看
498
DelphiTeacher的专栏
D
S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
顶部