我有一个窗体(从QMainWindow继承)与“设置”按钮,需要显示设置窗体(从QWidget继承)。我是否需要删除或关闭后?
按钮点击(),还有一些settingsButtonClick()插槽
而且在settingsButtonClick连接:
void MainQT::settingsButtonClick()
{
SettingsForm *settingsForm = new settingsForm();
settingsForm->show();
}
它可以正常工作,但问题是我应该需要的地方删除此形式,或者它会被删除时我关闭设置表单? 在这种情况下,我正确地管理内存的方式是什么?我是否应该在隐藏MainForm的ctor中实例化设置窗体,并且只根据请求显示?
您需要手动删除它。但为什么'新'它在第一位?为什么不只是'SettingsForm settingsForm; settingsform.show();'? – BoBTFish
@BoBTFish因为在你的情况下,表单会在显示后立即被破坏。 –