重构了代码，控制反转，到Frame部分来做核心控制