如何在客户端Windows应用程序中实现非模态滑动通知栏,例如Firefox,Beyond Compare和VMware Workstation 6.5?
现在任何语言或框架都可以;我当前的应用程序是在Delphi / C ++ Builder中,但我也对比较框架和原型设计一些UI感兴趣。
相关问题:This question询问是否在Java中这样做。
答案 0 :(得分:1)
Beyond Compare的通知栏没有滑动,只是弹出,所以我无法提供任何帮助。通知栏本身只是一个带有TImage和TLabel的TPanel,用于图像/文本。它在设计时放置在主窗口上,并设置为对齐底部。通常它是隐藏的,当有要显示的消息时,我们将Visible属性设置为true。
隐藏通知的方法有多种,具体取决于您的行为方式。在BC中,我们安装了键盘和鼠标挂钩(带有WH_KEYBOARD或WH_MOUSE的SetWindowsHookEx)并将其隐藏在按键和鼠标按钮事件上。或者,就像Mark说的那样,你可以在延迟后隐藏它,在旁边添加一个关闭按钮,或者只是在应用程序中查看特定事件并手动隐藏它。
答案 1 :(得分:0)
在Delphi中,我相信您可以更改Dialog本身的属性(从“Dialog”更改窗口类型并选择标准窗口替代)。对不起,我不能再具体了,自从我上次使用Delphi应用程序已经有两年了。