最近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...