我需要在 qt View 中显示一组分层数据。我正在使用 QColumnView 来显示模型。但是,有一个功能可以将 View 中的最后一列降级为预览小部件。有可能隐藏这个吗?例如,像 view.setPreviewWidget( NULL ) 这样的东西,尽管这会破坏程序
编辑:我应该澄清一下,我想要一种完全隐藏最后一列的方法,即让我 View 中的最后一列成为模型的“叶子”,并且没有预览空间
最佳答案
这将在单击时隐藏按钮。
#include <QtGui/QApplication>
#include <QtGui/QColumnView>
#include <QtGui/QPushButton>
#include <QtGui/QFileSystemModel>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
QColumnView view;
QFileSystemModel model;
QPushButton button(&view);
button.setText("Click me");
QObject::connect(&button, SIGNAL(clicked()), &button, SLOT(hide()));
model.setRootPath("/");
view.setModel(&model);
view.setPreviewWidget(&button);
view.show();
return a.exec();
}
请注意,它将永远隐藏。如果你想让它再次显示,你必须调用 show()
。
关于c++ - 是否可以从 qt QColumnView 中删除预览小部件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3419185/