max*_*fax 4 delphi trayicon frames jedi
我有一个框架,两个按钮和一个JEDI TrayIcon(TJvTrayIcon,版本3.40).德尔福XE.
第一个按钮:
Frame11.Visible := true;
Run Code Online (Sandbox Code Playgroud)
第二:
Frame11.Visible := false;
Run Code Online (Sandbox Code Playgroud)
当我尝试最小化窗口 - >从系统托盘恢复它时 - >单击"Visible:= false"按钮然后"Visible:= true"=框架不会出现.
问题在于[tvAutoHide]TJvTrayIcon的可见性.
我没有在一个新项目中看到这个问题,但我有一个旧项目.我无法理解它为什么会发生以及如何防止它.请参阅我的问题项目:http://www.filedropper.com/trayicon
感谢帮助!
你是对的,有一个错误TJvTrayIcon.如果AnimateToTray是Visibility选择,它不会恢复Application.ShowMainForm和Application.MainForm.Visible状态.它显示窗口,但恢复后窗体的"可见"仍为false.这导致任何显示隐藏控件失败的尝试,因为他们的父母似乎没有显示.
修复错误超出了这个答案的范围.对于解决方法:
Application.ShowMainForm := True;
Visible := True;
Run Code Online (Sandbox Code Playgroud)
某处.要快速测试,请在显示框架之前在Button1单击事件中进行.但是你想在主表格恢复之后把它放在没有其他副作用的地方.