關於QT富文字的那些事兒

2021-10-03 11:05:54 字數 1898 閱讀 6403

去年折騰的乙個專案,其中的某個部分就是在一段文字中的重點突出某個符號,採用不同的字型和顏色,一開始我還不太明白,後來才開始理解了原來是要富文字顯示,這塊目前用qt實現,然後查了一些富文字的例子,qlabel控制項是支援富文字顯示的,只不過網上的一些基於正規表示式的例子不能對單個字元過濾,所以下面改進了一些,不多說了,直接上**

qstring strsupplement = qstring::fromlocal8bit("*誇獎人");

ui->lable_meal->setstylesheet("color:black;");

if(!strsupplement.isempty())

ui->lable_meal->settext(strsupplement);

前面是關於正則的注釋,後邊是針對單個字元進行過濾。

然後基於字元的過濾方法是qstring::replace功能,這個函式的功能很強大,比如我在**中也可以嵌入這個功能,在對於qtablewidget的操作中,可能針對某個表單中的資料的某個特別字元進行了重點突出,比如可能是這樣的。

qstringlist tableheader;

ui->table_company->setcolumncount(3);

ui->table_company->setrowcount(6);

tableheader.clear();

tableheader << qstring::fromlocal8bit("公司") << qstring::fromlocal8bit("市場")horizontalheader()->setstretchlastsection(true);

ui->table_company->sethorizontalheaderlabels(tableheader);

ui->table_company->verticalheader()->setvisible(false);

ui->table_company->setshowgrid(true);

//ui->table_company->setstylesheet(companywhatstyle);

const int datatablecellwidth_company[3] = ;

for(int i = 0; i < 3; ++i)

ui->table_company->horizontalheader()->setfixedheight(32);

ui->table_company->verticalheader()->setdefaultsectionsize(25);

ui->table_company->setverticalscrollbarpolicy(qt::scrollbaralwaysoff);

ui->table_company->sethorizontalscrollbarpolicy(qt::scrollbaralwaysoff);

qstring strbusiness = qstring::fromlocal8bit("*文具類:600d;*圖書類:900d;*電子類:900d;雜誌類:200d");

ui->table_company->setitem(0,0,new qtablewidgetitem(qstring::fromlocal8bit("星辰科技")));

strbusiness = strbusiness.replace('*',"\*");

ui->table_company->setcellwidget(0,1,new qlabel(strbusiness,this));

ui->table_company->setitem(0,2,new qtablewidgetitem(qstring::fromlocal8bit("優質"));

寫到這裡了,還是要多注意其中的坑,所以對於qt來說,還是要多加學習的

關於Python那些事兒

1.易於學習 python有相對較少的關鍵字,結構簡單,和乙個明確定義的語法,學習起來更加簡單。2.易於閱讀 python 定義的更清晰。3.易於維護 python的成功在於它的源 是相當容易維護的。4.乙個廣泛的標準庫 python的最大的優勢之一是豐富的庫,跨平台的,在unix,windows和...

關於Nginx那些事兒

記憶體少 併發能力強,效能優化 正向 在瀏覽器中配置 伺服器,實現客戶端對伺服器的訪問。也就是說,在一般情況下,我們客戶端無法直接訪問到伺服器,需要有那麼乙個中臺作為中間應用實現訪問。反向 反向 中,客戶端是無知的,不知道是否配置了伺服器,我們將資料發到反向 伺服器上去,反向 伺服器選擇目標伺服器獲...

關於BOM的那些事兒

window物件 1.window物件是最頂層的物件 2.window物件有六大屬性,這六大屬性本身也是物件 3.window物件旗下的document也是物件 並且document旗下有五大屬性 4.document旗下的五大屬性又是物件,總結 都是物件 window screenleft 和 s...