J jelly_pillar Unregistered / Unconfirmed GUEST, unregistred user! 2005-05-27 #1 小弟最近相做一个程序,需要同时将两个窗口的标题栏高亮显示(就像PhotoShop一样),请问如何能做到呢?
J jelly_pillar Unregistered / Unconfirmed GUEST, unregistred user! 2005-05-27 #2 小弟最近相做一个程序,需要同时将两个窗口的标题栏高亮显示(就像PhotoShop一样),请问如何能做到呢?
J jelly_pillar Unregistered / Unconfirmed GUEST, unregistred user! 2005-05-27 #4 请问什么叫主从关系?就是父子关系吗?怎样将两个或多个窗口设为主从关系使它们同时高亮显示呢?
W wanghaiou Unregistered / Unconfirmed GUEST, unregistred user! 2005-05-30 #5 同时高亮显示?? 好像不可能吧,在同一时间好像只能有一个窗体可以高亮显示吧???
D dcs_dcs Unregistered / Unconfirmed GUEST, unregistred user! 2005-05-30 #7 沒有吧,。干嗎要高亮顯示呢。。那不就分不清哪個是當前窗體了
J jelly_pillar Unregistered / Unconfirmed GUEST, unregistred user! 2005-05-30 #8 我的目的是要做一些工具的窗口,当主窗口高亮显示时,所有的工具窗口都高亮显示。这种效果其实有所多软件都有的。比如PhotoShop, Dreamweaver, Flash, Visual C++等。
W wanghaiou Unregistered / Unconfirmed GUEST, unregistred user! 2005-05-30 #9 可以告诉你了,你看的那些不是真正的窗体,而是用控件组合做出来的。
T Toysun Unregistered / Unconfirmed GUEST, unregistred user! 2005-05-30 #10 FormStyle 设置为 MDIForm和MDIChild
J jelly_pillar Unregistered / Unconfirmed GUEST, unregistred user! 2005-05-30 #11 To wanghaiou: 能说一下具体怎么实现吗? To Toysun: 我想您可能理解错了,我不是要使用MDI窗口将一个窗口放到另一个窗口里,而是需要并列的窗口,即一个窗口不受另一个窗口框架的限制。
To wanghaiou: 能说一下具体怎么实现吗? To Toysun: 我想您可能理解错了,我不是要使用MDI窗口将一个窗口放到另一个窗口里,而是需要并列的窗口,即一个窗口不受另一个窗口框架的限制。
W wanghaiou Unregistered / Unconfirmed GUEST, unregistred user! 2005-05-30 #12 我以前做过的,用几个ScrollBox控件就能搭建出一个类似于你说的那样的窗体,然后再作为标题栏的ScrollBox的鼠标事件里写能让它移动的代码!
J jelly_pillar Unregistered / Unconfirmed GUEST, unregistred user! 2005-05-30 #13 那样真的能实现吗?我用ScrollBox控件,把它从主窗口拖出来后,它就和一个BorderStyle为bsToolWindow的效果一样了,总是只有一个窗口的标题栏是高亮的。 如果您的原来的代码还在,能否请您贴一下,我真的非常想做出这种效果来。谢谢。
那样真的能实现吗?我用ScrollBox控件,把它从主窗口拖出来后,它就和一个BorderStyle为bsToolWindow的效果一样了,总是只有一个窗口的标题栏是高亮的。 如果您的原来的代码还在,能否请您贴一下,我真的非常想做出这种效果来。谢谢。
F flyjimi Unregistered / Unconfirmed GUEST, unregistred user! 2005-05-30 #14 或许你可以使用Windows 应用程序编程接口(API)函数来使该窗口的标题栏进行闪动。函数FlashWindows可以被用使一个特定的窗口闪动一次。函数原形: function FlashWindow(const hwnd:Integer;const bInvert:LongBool):LongBool; 使用方法 FlashWindow(Form1.Handle,TRUE); 如果加个Timer,间隔很小时间闪一次,应该可以模拟刷新。
或许你可以使用Windows 应用程序编程接口(API)函数来使该窗口的标题栏进行闪动。函数FlashWindows可以被用使一个特定的窗口闪动一次。函数原形: function FlashWindow(const hwnd:Integer;const bInvert:LongBool):LongBool; 使用方法 FlashWindow(Form1.Handle,TRUE); 如果加个Timer,间隔很小时间闪一次,应该可以模拟刷新。
H hm888k Unregistered / Unconfirmed GUEST, unregistred user! 2005-05-30 #16 form1(scrollbox)是主要显示窗体, Tform2.create parent:=form1(scrollbox); left:=x; top:=y; 即可。 请加分吧
J jelly_pillar Unregistered / Unconfirmed GUEST, unregistred user! 2005-05-30 #17 To flyjimi: 我想用 FlashWindow并不是很好的方法,因为这样不仅使眼睛觉得不舒服,同时也会占用大量的CPU,使得机器运行变慢,这当然是一般人都不希望看到的。
J jelly_pillar Unregistered / Unconfirmed GUEST, unregistred user! 2005-05-30 #18 To hm888k: 希望您回答问题前先看清问题好吗?
F flyjimi Unregistered / Unconfirmed GUEST, unregistred user! 2005-05-30 #19 如果要真正同时高亮多个窗口(不采用刷新模拟),应该不可能吧。 除非是用控件做成窗口的样子,仍然不是真正的多窗口同时高亮。
J jelly_pillar Unregistered / Unconfirmed GUEST, unregistred user! 2005-05-30 #20 我想应该能做出来的。比如那些软件的工具窗口,我想不可能是模拟的。