qlabel提供了一個文本或圖像的顯示,沒有提供使用者互動功能。
一個qlabel可以包含以下任意内容類型:
内容
設定
純文字
使用settext()設定一個qstring
富文本
使用settext()設定一個富文本的qstring
圖像
使用setpixmap()設定一個圖像
動畫
使用setmovie()設定一個動畫
數字
使用setnum()設定int或double,并轉換為純文字。
nothing
空的純文字,預設的,使用clear()設定
<a href="#%e7%ae%80%e8%bf%b0">簡述</a>
<a href="#%e7%ba%af%e6%96%87%e6%9c%ac">純文字</a>
<a href="#%e6%98%be%e7%a4%ba">顯示</a>
<a href="#%e5%af%b9%e9%bd%90%e6%96%b9%e5%bc%8f">對齊方式</a>
<a href="#%e8%87%aa%e5%8a%a8%e6%8d%a2%e8%a1%8c">自動換行</a>
<a href="#%e8%ae%be%e7%bd%ae%e8%a1%8c%e9%ab%98">設定行高</a>
<a href="#%e7%9c%81%e7%95%a5">省略</a>
<a href="#%e5%9e%82%e7%9b%b4%e6%98%be%e7%a4%ba">垂直顯示</a>
<a href="#%e5%af%8c%e6%96%87%e6%9c%ac">富文本</a>
<a href="#%e5%9b%be%e5%83%8f">圖像</a>
<a href="#%e5%8a%a8%e7%94%bb">動畫</a>
<a href="#%e6%95%b0%e5%ad%97">數字</a>
<a href="#%e8%b6%85%e9%93%be%e6%8e%a5">超連結</a>
<a href="#%e6%96%b9%e6%b3%95%e4%b8%80">方法一</a>
<a href="#%e6%96%b9%e6%b3%95%e4%ba%8c">方法二</a>
<a href="#%e6%80%bb%e7%bb%93">總結</a>

首先我們構造一個qlabel對象,其中this為其所在的父窗體。通過調用settext可以為标簽設定文本(hello world),這時标簽就可以正常顯示出來了。為了顯示更佳的效果,我們可以通過調用setstylesheet來設定樣式。color: white-顧名思義,就是為标簽設定一個文本色(白色)。
預設的标簽文本對齊方式為:左對齊、垂直居中,我們可以通過setalignment來設定,包括:左、上、右、下、居中對齊,一般情況,我們會進行兩兩組合(水準方向、垂直方向)。
比如:居中對齊
使用樣式表來控制(水準居右、垂直居下):
如果文本過長,我們可以采用自動換行的方式來顯示。
注意:當使用英文的時候,如果寫為類似形式”abcdefghijklmnopqrstuvwxyz”則是不能換行的,why?因為中間沒有空格,是以需要寫為”abcde fghij klmno pqrst uvwxyz”。
一般情況下,自動換行之後文本上下行會距離比較近,我們可以通過下面方式來設定行高。
如果過長,我們又不想換行,隻想把其中一部分省略為…,那麼我們可以通過qfontmetrics來實作,這裡先不介紹qfontmetrics,感興趣的童鞋可以先自行研究。
預設情況下,文本顯示方式為水準方向,如果我們需要在垂直方向上顯示,需要用一些小技巧來處理。
我們可以在助手中查找關于<code>using html markup in text widgets</code>的資料,檢視qt支援哪些html标記。
下面我們來寫一段html代碼,o(∩_∩)o哈哈~。。。顯示不同顔色的文本以及圖檔
是不是很神奇?經常我們要用好幾個控件來組合才能實作的功能,就僅僅幾行html代碼就搞定了。。。何樂而不為!
首先我們建構一個qpixmap來作為顯示的圖檔,然後設定标簽的大小,可以通過setscaledcontents按比例縮放圖檔達到理想的效果。
這裡我們需要使用另外一個類qmovie來控制動畫,start()可以進行播放與stop()則可以停止,也可以通過調用setspeed()來設定動畫的播放速度。
如果我們需要顯示一個數字,則可以調用setnum(),他可以将内容轉換為純文字。
很簡單就一段代碼,我們可以打開源碼瞅瞅,究竟setnum是如何實作的。
就三行代碼,呵呵哒。。。超簡單吧,我們要有一顆随時看源碼的心!
我們需要簡單使用标簽<code><a></a></code>寫一段簡單的html超連結代碼
比較簡單,直接調用setopenexternallinks(true)即可。
聲明一個槽openurl,将其與linkactivated信号關聯。
通過上面的學習,我們基本将标簽的大部分用法都分享了,可以看出html、css的重要性,是以無論你現在所從事的工作是什麼,或者以後做什麼,我都建議好好研究下web,技多不壓身。。。上面的内容雖多,但都很簡單,也很重要,是以都需要掌握,我們不隻是qter,我們更是工匠-精益求精、嚴謹、耐心,專注,堅持。