DuiLib 四 . XML布局

外部应该使用一个垂直布局VerticalLayout
而标题栏里面是从左到右的一个水平布局 HorizontalLayout
可以通过 height 属性指定 HorizontalLayout 的高度。

XML 复制代码
<?xml version="1.0" encoding="utf-8"?>
<Window size="640,480" caption="0,0,0,35">
  <VerticalLayout>
    <!--标题栏-->
    <HorizontalLayout height="35" bkcolor="#FFD6DBE9">
      <Control bkimage="logo.png" height="32" width="32" />
      <Label text="duilib tutorial" />
    </HorizontalLayout>
    <!--窗口内容区域-->
    <HorizontalLayout bkcolor="#FF4D6082">
      
    </HorizontalLayout>
  </VerticalLayout>
</Window>

bkcolor 属性指定了标题栏的背景色,

2、内外边距
标题栏高度是 35,而 logo 的高度是 32,我们让 logo 图像的上方和左侧分别向下和向右移动 7~9 像素,这样 logo就可以居中显示了。通过 padding 属性可以指定容器的外边距,这里要注意,不像 Web 前端一样使用的是 margin,刚切换过来的朋友可能容易出错,所以要尤其注意。我们通过指定 padding="8,8,0,0" 的方式,指定了 logo文件左边和上边分别有 4 个像素的边距,代码如下:

XML 复制代码
<?xml version="1.0" encoding="utf-8"?>
<Window size="640,480" caption="0,0,0,35">
  <VerticalLayout>
    <!--标题栏-->
    <HorizontalLayout height="35" bkcolor="#FFD6DBE9">
      <Control bkimage="logo.png" height="32" width="32" padding="4,4,0,0"/>
      <Label text="duilib tutorial" />
    </HorizontalLayout>
    <!--窗口内容区域-->
    <HorizontalLayout bkcolor="#FF4D6082">
      
    </HorizontalLayout>
  </VerticalLayout>
</Window>

padding 的 4 个参数顺序分别是 左、上、右、下

相关推荐
LitchiCheng2 天前
还在改xml调相机?MuJoCo交互式可视化调整相机安装位置
xml·数码相机
richard_yuu2 天前
JSON vs XML vs 二进制:3种序列化终极选型
xml·c++·qt·学习·json
秋田君4 天前
QT_XML文件操作
xml·数据库·qt
数据知道5 天前
XXE 漏洞深度实战:XML 外部实体攻击与 OOB 带外
xml·网络·安全·网络安全
云水一下5 天前
零基础玩转bWAPP靶场(四十七):XSS - Reflected (AJAX/XML)
xml·web安全·ajax·xss·bwapp
爱敲键盘的猴子7 天前
深入理解 Spring IoC -- 基于 XML 的 Bean 配置详解
xml·java·spring
前网易架构师-高司机8 天前
带标注的羽毛球运动员,裁判,羽毛球识别数据集,识别率84.4%,2879张图,支持yolo,coco json,voc xml,文末有模型训练代码
xml·yolo·json·数据集·羽毛球·裁判
微微1笑抽了筋11 天前
xml中设置透明度
xml
Source.Liu12 天前
【Uppsala】入口模块(lib.rs)
xml·rust
Source.Liu12 天前
【Uppsala】介绍
xml·rust