DuiLib學習筆記3——顏色探究


在前面兩篇日志已經能使用xml了。今天准備好好的折騰一番,結果在顏色上卻掉坑里了。

起初我在ps里取顏色為0104ff

這里01為R,04為G,ff為B

在控件的屬性里有這樣一個屬性bkcolor="#0104ff"。這個代碼放進去后為黑色,並非我們期望的藍色。

后來才發現在duilib里顏色正常的是8位,ps里的是6位。另外兩位為A,是代表透明度的。在duilib中顏色的表達順序為:

ARGB

透明度|紅色|綠色|藍色

大家知道藍色加點紅色就會變成粉紅色,所以我這里采用藍色的背景,如果透明色生效,那么紅色控件半透明就會變成粉紅色。純紅的RGB代碼為#ff0000,ff為最大值,所以不透明的ARGB代碼為#ff ff 00 00

XML代碼如下:

<?xml version="1.0" encoding="utf-8"?>
<Window mininfo="400,360" size="480,320">
  <Font name="黑體" size="16" default="true" />
  <VerticalLayout bkcolor="#ff0104ff">
    <Button name="closebutton" height="20" bkcolor="#88ff0000" text="這是透明的"  maxwidth="120" />
    <Button name="closebutton" height="20" bkcolor="#ffff0000" text="這是不透明的"  maxwidth="120" />
  </VerticalLayout>
</Window>

運行后效果如下圖:

上圖看着不太明顯,不想再改上面的配圖和文字了,另外換了個對比強烈的顏色代碼如下:

<?xml version="1.0" encoding="utf-8"?>
<Window mininfo="400,360" size="480,320">
  <Font name="黑體" size="16" default="true" />
  <VerticalLayout bkcolor="#ffab7958">
    <Button name="closebutton" height="20" bkcolor="#88e47621" text="這是透明的"  maxwidth="120" />
    <Button name="closebutton" height="20" bkcolor="#ffe47621" text="這是不透明的"  maxwidth="120" />
  </VerticalLayout>
</Window>

運行效果如下圖:

另外我還寫了一個效果明顯的,懶得上代碼了,效果如下:

最后要補充一句,這個透明針對主窗口透明沒有用,但是寫顏色的時候一定要補齊前面兩位,不然會錯誤的解析顏色


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM