問題描述:
目的是想用QTableView去打開指定路徑下的文件時,想要對QTableView的horizontalHeader的内容進行修改。所以就對QTableView的model進行了setHeaderData操作,但是,沒有達到預期效果。代碼如下:
- QDirModel *model = new QDirModel;
- // model->setHeaderData(0,Qt::Horizontal,tr("name")); //測試返回值為 false
- // model->setHeaderData(0,Qt::Horizontal,tr("size")); //測試返回值為 false
- // model->setHeaderData(0,Qt::Horizontal,tr("type")); //測試返回值為 false
- // model->setHeaderData(0,Qt::Horizontal,tr("date")); //測試返回值為 false
- // for(int i=0;i<5;i++)
- // {
- // qDebug()<<model->headerData(i,Qt::Horizontal);
- // }
- m_tableView = new QTableView(this);
- m_tableView->setFixedSize(775,630);
- m_tableView->setModel(model);
- m_tableView->setColumnHidden(2,true);
- m_tableView->setIconSize(QSize(60,40));
- m_tableView->setRootIndex(model->index(QDir::currentPath()+"/video/")); //open the video folder under the currentPath;
- m_tableView->setColumnWidth(0,400);
- m_tableView->setColumnWidth(1,80);
- m_tableView->setColumnWidth(3,250);
- m_tableView->setFocusPolicy(Qt::NoFocus);
- m_tableView->horizontalHeader()->setFont(QFont("Arial",20,75));
實際輸出為:
QVariant(QString, "Name")
QVariant(QString, "Size")
QVariant(QString, "Type")
QVariant(QString, "Date Modified")
QVariant(, )
註釋掉的代碼就是未能達到預期效果的代碼。麻煩大家賜教。
[ 此帖被午小夜在2009-12-04 13:47重新编辑 ]