既然使用Frame又何必使用什么Visible来切换显示呢
脱了裤子放屁
使用动态创建即可以完成那些工作;   MyFrame := TMyFram.Create(ParnComp);
   MyFrame.Parent := ParnComp;
   MyFrame.Align := alClient;使用完成后即可以Free掉
使用下一个MyFrame地时候在Create就可以了。
多读一点OOP的书,你的OOP工夫还不够.