QT開發之deigner 漢字顯示等相關問題

2021-05-10 00:08:56 字數 1537 閱讀 6024

最近qt4.3.5平台搭好後開始進行開發,根據專案的需求先做一些介面。

其中遇到兩個大問題:1、使用designer+在main.cpp中新增自己的控制項的問題

2、選擇顯示文字控制項的問題

3、漢字顯示及設定字型的大小、粗體、顏色、背景色函式的選擇

解決方法:1、載入ui控制項有兩種方法:

(1)普通的載入方法:如我的main.cpp程式:

} 即可實現!

(2)動態載入ui,用quiloader,過程如下:

在.pro檔案末尾新增config+=uitools;

main.cpp:#include

#include

quiloader loader;

qfile file("test.ui");

file.open(qfile::readonly);

qwidget *third=loader.load(&file);

third->show();

注:動態載入ui的好處就在於可以在設計的.ui檔案上再增加自己的控制項,如想加乙個textedit控制項:

qtextedit *textedit=new qtextedit(third);

textedit->setgeometry(288,30,40,30);

textedit->settext("abc");     

就可以顯示了!       

2、關於顯示文字控制項的選擇:剛用qt對控制項都不熟悉,qlabel可以顯示文字,但是如果設定字型的話,它的函式

就不如textedit的函式好用,而且textedit關於設定文字的函式也比qlabel多一些!

3、漢字顯示的問題:#include

qtextcodec::setcodecfortr(qtextcodec::codecforname("gbk"));

char *str="a真的";

textedit->settext(qobject::tr(str));

或者text->settext(qobject::tr("真的"));

4、設定字型大小、粗體、斜體、顏色、背景的時候要注意:setfont可以設定,但是前提是沒有用setstylesheet函式

否則setfont不起作用,同時還可以用html腳步這樣設定。

stylesheet方法:textedit->setstylesheet("font-size:18px;""background-color:black;"

"border-style:solid;""font-style:italic;""font-weight:bold;""color:white");

setfont方法:  qfont font;

font.setfamily("bitstream charter");

font.setpixelsize(16);

font.setbold(true);

font.setitalic(true);

textedit->setfont(font);

html方法:textedit->settext("abc")

qt如何在label中顯示漢字 Qt中文顯示

qt預設的編碼 unicode 是不能顯示中文的,可能由於windows的預設編碼的問題,windows預設使用 gbk gb2312 gb18030 所以需要來更改qt程式的編碼來解決中文顯示的問題。qt中有專門的乙個類來處理編碼的問題 qtextcodec 可以以下的這些方法來設定編碼。1.設定...

iOS開發之UIPickView的迴圈顯示內容

效果圖 uipickerview實現迴圈滾動,需要實現uipickerview的 以及資料來源方法,實現pickerviewloaded方法!原理是 是放大返回顯示 numberofrowsincomponent!的row數量,實現迴圈顯示!廢話連篇直接上碼 inte ce timingcontro...

Qt開發之檔案讀寫

1 寫檔案 沒有就建立再寫,有就覆蓋已有內容 qstringlist lines qfile file d 1.txt if file.open qiodevice writeonly 2 讀檔案 qstringlist lines qfile file d 1.txt qtextcodec set...