日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

Duilib教程-自动布局1

發(fā)布時(shí)間:2024/4/11 编程问答 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Duilib教程-自动布局1 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

我們要實(shí)現(xiàn)一個(gè)帶標(biāo)題欄和狀態(tài)欄的程序,同時(shí)要支持拉伸,即包括最小化、最大化,圖如下:

?

XML:

<?xml version="1.0" encoding="utf-8" standalone="yes" ?><Window size="695,542"><VerticalLayout width="657" height="517" bkcolor="#FFA0A0A4"><HorizontalLayout name="title" height="32" bkcolor="#FF63A6F1"><Button text="X" bordersize="1" float="true" pos="608,0,0,0" width="60" height="30" bkcolor="#FF008067" bkcolor2="#0000C020" bordercolor="#00FFFF00" textcolor="#FF000000" disabledtextcolor="#FFA7A6AA" align="center" /></HorizontalLayout><HorizontalLayout name="mid" bkcolor="#FFBABABA" /><HorizontalLayout name="status" height="30" bkcolor="#FF808080" /></VerticalLayout></Window>

?

在DUIDesigner中,拖動(dòng)窗口邊框,即可看到效果,標(biāo)題欄和狀態(tài)欄的位置都不變,即隨窗口大小而改變。

?

看屬性,發(fā)現(xiàn),status和title都有屬性 height,而中間的,什么屬性都沒有。在窗口設(shè)置如下:

title:

mid:

?

可以知道,pos即可以設(shè)置float屬性為false的拉伸操作,所以不只是LAYOUT可以隨窗口(準(zhǔn)確的說應(yīng)該是擁有它的LAYOUT)自由拉伸,普通的控件也可以,只要float為false。

?

Float意思為浮動(dòng),當(dāng)它為TRUE時(shí),它就浮動(dòng)在窗口上面,位置永遠(yuǎn)不會(huì)變(相對(duì)于擁有它的LAYOUT)。

當(dāng)它為FALSE時(shí),它浮不起來,停在水上,隨波逐流,所以能夠被流水(LAYOUT)改變它的大小。

?

注意,只有right和bottom才有效。如果不為0,那么它就是該高度,即不隨父LAYOUT改變大小(位置不能更改)。為0就是跟父LAYOUT更改大小。

?

在上面這個(gè)示例中,關(guān)閉按鈕并不隨著窗口改變位置,因?yàn)槲覀兛吹搅?#xff0c;它的float為TRUE。如果我們想要它永遠(yuǎn)停在最右邊呢?

看下面的XML:

<?xml version="1.0" encoding="utf-8" standalone="yes" ?><Window size="695,542"><VerticalLayout width="657" height="517" bkcolor="#FFA0A0A4"><HorizontalLayout name="title" height="32" bkcolor="#FF63A6F1"><Control /><Button text="X" bordersize="1" maxwidth="60" pos="608,0,0,0" width="60" height="30" bkcolor="#FF008067" bkcolor2="#0000C020" bordercolor="#00FFFF00" textcolor="#FF000000" disabledtextcolor="#FFA7A6AA" align="center" /></HorizontalLayout><HorizontalLayout name="mid" bkcolor="#FFBABABA" /><HorizontalLayout name="status" height="30" bkcolor="#FF808080" /></VerticalLayout></Window>

?

我們加了一個(gè) float 的 Control,以及將關(guān)閉按鈕的 maxwidth設(shè)置為60,同時(shí)FLOAT設(shè)置為FALSE(float屬性默認(rèn)為false)。

?

這樣設(shè)置的意思是:關(guān)閉按鈕最大寬度為60,所以它不能被拉得更寬。

在它的左邊有一個(gè)FLOAT,它可以被任意拉伸。所以當(dāng)窗口被拉伸時(shí),關(guān)閉按鈕為60,左邊的control就被拉伸到?窗口寬 - 60

?

如果最右邊要加最大化、最小化按鈕,實(shí)現(xiàn)原理也是一樣的。當(dāng)然,你可以在最右邊加一個(gè)LAYOUT,在這個(gè)LAYOUT上加上最小化、最大化、關(guān)閉按鈕,這樣層次感更強(qiáng),也更容易管理和修改。

總結(jié)

以上是生活随笔為你收集整理的Duilib教程-自动布局1的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。