qabstractitemmodel類的子類,經常需要實現的幾個方法
when subclassing qabstractitemmodel, at the very least you must implement index(), parent(), rowcount(), columncount(), and data().
the model is a ****** table of rows and columns.each item has a unique index specified by a qmodelindex.
you can obtain this model index using the index( int nrow,int ncolumn, qmodelindex *parent=0 ) function
用index()函式獲取qmodelindex模型索引。 1.
flags()方法。
//flags()方法的,判斷使用的是qmodelindex類的column()方法,根據列進行判斷。
qt::itemflags tradetablemodel::flags ( const qmodelindex & index ) const
}break;
return flags;}2.
index()方法
//根據行和列,建立qmodelindex模型索引,
//在model中,qmodelindex才是訪問資料的 唯一標識
qmodelindex tradetablemodel::index ( int row, int column, const qmodelindex & parent/* = qmodelindex() */) const
return createindex(row, column);//qabstractitemmodel類的方法 createindex(),根據行列,建立qmodelindex。}3.
data()方法
//返回index模型索引處的資料,根據角色不同,獲取不同的資料。
//返回給個角色的值
qvariant tradetablemodel::data ( const qmodelindex & index, int role /*= qt::displayrole*/ ) const
switch(role)
break;
4.setdata()方法
//設定model中的資料,
bool tradetablemodel::setdata ( const qmodelindex & index, const qvariant & value, int role/* = qt::editrole */)
5.headdata()方法
qheaderview標題類使用的資料,就是有model中的方法headerdata()提供的。
即列的名字。
//返回列的內容,即**顯示的列名字
qvariant tradetablemodel::headerdata ( int section, qt::orientation orientation, int role/* = qt::displayrole*/ ) const
else if(role == qt::userrole)
}return qabstractitemmodel::headerdata(section, orientation, role);}6.
int tradetablemodel::columncount ( const qmodelindex & parent/* = qmodelindex() */) const
7.int tradetablemodel::rowcount ( const qmodelindex & parent/* = qmodelindex()*/ ) const
8.qmodelindex tradetablemodel::parent ( const qmodelindex & index ) const
9.qvariant headdata( int section,qt::orientation orientation, int role=qt::displayrole )
//該方法,主要是返回列名稱,
//也可以返回列的序號,
//section:列序號,即第幾列
//orientation:水平還是垂直
//role:角色
qvariant tradetablemodel::headerdata ( int section, qt::orientation orientation, int role/* = qt::displayrole*/ ) const
else if(role == qt::userrole)
}return qabstractitemmodel::headerdata(section, orientation, role);
}
JS中all Collection 的幾個方法
1.length屬性 返回集合中元素的個數。2.item vindex isubindex 方法 一 如果只有乙個引數 引數為整型 1 如果引數是整數,根據索引返回子元素 2 如果引數是字串,根據name或者id返回乙個集合或者子元素 二 如果有兩個引數 第乙個引數為字串,第二個引數為整型 1 第乙...
python中執行shell命令的幾個方法
這篇文章主要介紹了python中執行shell命令的幾個方法,本文一共給出3種方法實現執行shell命令,需要的朋友可以參考下 最近有個需求就是頁面上執行shell命令,第一想到的就是os.system,如下 os.system cat proc cpuinfo 但是發現頁面上列印的命令執行結果 0...
python中執行shell命令的幾個方法小結
最近有個需求就是頁面上執行shell命令,第一想到的就是os.system,複製 如下 os.system cat proc cpuinfo 但是發現頁面上列印的命令執行結果 0或者1,當然不滿足需求了。嘗試第二種方案 os.popen 複製 如下 output os.popen cat proc ...