qtabbar文字對齊方式修改
嘗試使用qss修改
qtabbar
qtabbar::tab
失敗!
檢視幫助文件,也沒找到能夠修改對齊方式的函式,索性去查原始碼,一路跟蹤到
case ce_tabbartab:if(
const qstyleoptiontab *tab = qstyleoption_cast<
const qstyleoptiontab *
>
(opt)
)break
;
發現目標,進入proxy()->drawcontrol(ce_tabbartablabel, tab, p, widget);
繼續跟蹤,找到最終繪製 ce_tabbartablabel 的地方
int alignment = qt::aligncenter | qt::textshowmnemonic;if(
!proxy()
->
stylehint
(sh_underlineshortcut, opt, widget)
) alignment |
= qt::texthidemnemonic;
發現這裡設定了對齊方式,然後呼叫
proxy()->drawitemtext(p, tr, alignment, tab->palette, tab->state & state_enabled, tab->text, qpalette::windowtext);
進行繪製。
修改對齊方式的方法
繼承qproxystyle,重寫drawitemtext函式
class
tabstyle
:public qproxystyle
};
修改前
修改後
CSS 文字對齊方式
方法1 單行塊級元素水平居中只用新增text align即可,如p標籤,垂直居中vertical align只適用於行內元素與單元格,所以設定行高與塊高度相同即可 text align center 方法2 普通的文字居中只要設定text align即可,但是這個設定了p標籤的寬度,則是在該寬度內進...
文字垂直水平對齊方式
123 div怎麼才能做到123的位置水平垂直方向的隨意變化,例如左上,中下 水平方向的話使用text align就可以了,相容性很好,關鍵是垂直方向。css也有vertival align來設定垂直方向的定位,但是它是為了table cell設計的 要用到vertical align,需要將div...
img標籤與文字對齊方式
img標籤的align屬性可控制與文字的對齊方式,align屬性的值如下 absbottom 影象的下邊緣與同一行中最大元素的下邊緣對齊。absmiddle 影象的中間與同一行中最大元素的中間對齊。baseline 影象的下邊緣與第一行文字的下邊緣對齊。bottom 影象的下邊緣與第一行文字的下邊緣...