【发布时间】:2018-09-20 04:35:45
【问题描述】:
我有一个 QDialog,它有一些设置,在此基础上,QTreeView 或整个 QMainWindow 需要更新或重新绘制或刷新。
QDialog 有两个按钮:
应用:此按钮需要将设置应用到 QMainWindow,例如将颜色应用到 QTreeView 列。这是一个例子,QMainWindow上有更多的项目,如QTableView等,点击这个按钮也需要更新。
关闭:此按钮隐藏 QDialog。
我尝试在单击应用按钮时在 QMainWindow 上调用重绘/更新功能,但没有任何效果。
void MainWindow::refresh()
{
setUpdatesEnabled(true);
setWindowModified(true);
repaint();
update();
show();
}
但是,在单击关闭按钮时,调用 QDialog 上的 hide,QMainWindow 上的整个视图会被更新/重新绘制。
我需要在应用按钮上做同样的事情。
如何做到这一点? QDialog->hide 在 QMainWindow 上调用的 SLOT 是什么?
【问题讨论】:
标签: qt qtreeview qmainwindow qdialog