在聊學習之前,想說一下將近乙個星期的時間我都幹了些什麼,為什麼沒有學習,總結起來乙個字——玩,11號朋友遠道而來,說是在家閒得慌,過來找我一起浪,直到昨天才將他送走,既然朋友來了,自然不能怠慢,請他吃飯,帶他閒逛,一起去爬山,還吃了一天的自製火鍋,回想起來這味道有點反胃。獨處的時候適合學習和思考,玩耍的時候就該和朋友一起。
自定義編輯模型
#ifndef currencymodel_h
#define currencymodel_h
#include #include #include class currencymodel:public qabstracttablemodel
;#endif // currencymodel_h
#include "currencymodel.h"
currencymodel::currencymodel(qobject *parent):qabstracttablemodel(parent)
//返回行數目
int currencymodel::rowcount(const qmodelindex &parent) const
//返回列數目
int currencymodel::columncount(const qmodelindex &parent) const
//返回列名
//qvariant類將大部分型別(int,string)的資料封裝起來,呼叫時使用to函式取出,例如:int型別包裝成qvariant,用qvariant::toint()取出
qvariant currencymodel::headerdata(int section, qt::orientation, int role) const
return currencyat(section);
}qstring currencymodel::currencyat(int offset) const
//設定底層的實際資料,由於不可能將資料硬編碼,所以必須為模型提供乙個用於設定的函式
void currencymodel::setcurrencymap(const qmap&map)
//返回單元格資料(唯讀模型)
//qvariant currencymodel::data(const qmodelindex &index,int role) const
//// if(role==qt::textalignmentrole)else if(role==qt::displayrole)
// double amount=currencymap.value(columncurrency)/currencymap.value(rowcurrency);
// return qstring("%1").arg(amount,0,'f',4);
// }
// return qvariant();
//}//(可編輯模型)
qvariant currencymodel::data(const qmodelindex &index,int role) const
if(role==qt::textalignmentrole)else if(role==qt::displayrole || role==qt::editrole)
double amount=currencymap.value(columncurrency)/currencymap.value(rowcurrency);
return qstring("%1").arg(amount,0,'f',4);
}return qvariant();
}//可編輯模型函式實現
qt::itemflags currencymodel::flags(const qmodelindex &index) const
return flags;
}//更新資料
bool currencymodel::setdata(const qmodelindex &index, const qvariant &value, int role)
return false;
}
備註:當類裡面有乙個成員函式沒有實現的時候,無法編譯通過的。 自定義Qt部件 盒狀模型
原文 盒狀模型 使用style sheets時,所有的部件都被視為有四個同心矩形的盒子 box 邊緣矩形 margin rectangle 邊框矩形 border rectangle 填充矩形 padding rectangle 和內容矩形 content rectangle 盒狀模型對四個矩形有詳...
4 QT功能模組
選中乙個檔案 str path為檔案路徑 qstring str path qfiledialog getopenfilename this,tr 選擇轉碼檔案 tr home tr 選中多個檔案 qstring strs qstringlist file list,output name qstr...
Qt 自定義事件
最近做的專案,是用qt的完成的,在用到事件派發的時候,要用自己自定義的事件型別來滿足需要。具體就是按照qt的官方文件說明,做了乙個簡單的例子,以免忘記,就先寫下來儲存。首先有個customevent 類,繼承自qevent ifndef customevent h define customeven...