我需要在qt视图中显示一组分层数据。我正在使用QColumnView来显示模型。但是,有一个功能是视图中的最后一列将被降级为预览小部件。有可能隐藏这个吗?例如,像view.setPreviewWidget(NULL),虽然这会破坏程序
编辑:我应该澄清一下,我想要一种完全隐藏最后一列的方法,即让我视图中的最后一列成为模型的“叶子”,并且没有预览空间
答案 0 :(得分:0)
这会在点击按钮时隐藏按钮。
#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()
。