C++ Builder 參考手冊 ? 使用控件的 Anchors 屬性自動調(diào)整位置和大小
C++ Builder 幾乎所有可以顯示在 Form 上的控件都有 Anchors 錨點屬性壹罚。
Anchors 錨點屬性包含上下左右4項虏杰,是把控件的上下左右邊分別 “錨” 在窗口對應(yīng)的邊上,即這個邊與窗口的邊的距離不變仁热。
錨點 | 說明 |
---|---|
akLeft | 控件的左邊和窗口的左邊保持距離不變 |
akTop | 控件的上邊和窗口的上邊保持距離不變 |
akRight | 控件的右邊和窗口的右邊保持距離不變 |
akBottom | 控件的下邊和窗口的下邊保持距離不變 |
這些屬性可以多選克懊,打勾有效洋丐。默認(rèn)情況豪诲,控件的左、上錨點選中达椰,控件的大小不變翰蠢,那么控件就保持和窗口的左上角相對位置固定。
左右方向:如果左右都選中砰碴,那么控件的左右都被 “錨住”躏筏,寬度隨窗口的寬度變化而改變,否則控件的寬度不變呈枉,具體如下表格:
akLeft | akRight | 說明 |
---|---|---|
[√] |
[ ] |
控件和窗口左邊保持距離不變,寬度不變 |
[ ] |
[√] |
控件和窗口右邊保持距離不變埃碱,寬度不變 |
[√] |
[√] |
控件和窗口左邊猖辫、右邊都保持距離不變,寬度可變 |
[ ] |
[ ] |
控件和窗口左邊砚殿、右邊距離的比例不變啃憎,寬度不變 |
上下方向:如果上下都被選中,那么控件的上下都被 “錨住”似炎,高度隨窗口的高度變化而變化辛萍,否則控件的高度不變,具體如下表格:
akTop | akBottom | 說明 |
---|---|---|
[√] |
[ ] |
控件和窗口上邊保持距離不變羡藐,寬度不變 |
[ ] |
[√] |
控件和窗口下邊保持距離不變贩毕,寬度不變 |
[√] |
[√] |
控件和窗口上邊、下邊都保持距離不變仆嗦,高度可變 |
[ ] |
[ ] |
控件和窗口上邊辉阶、下邊距離的比例不變,高度不變 |
例子:使用 Anchors 屬性瘩扼,當(dāng)窗口的大小改變時谆甜,讓右邊的按鈕始終在窗口的右邊,Button4 始終在右下角集绰,Edit1 始終在下面规辱,寬度自動調(diào)整,Memo1 隨窗口的大小自動調(diào)整占滿其余部分栽燕。
錨點 | Memo1 | Edit1 | Button1 | Button2 | Button3 | Button4 |
---|---|---|---|---|---|---|
akLeft | [√] |
[√] |
[ ] |
[ ] |
[ ] |
[ ] |
akTop | [√] |
[ ] |
[√] |
[√] |
[√] |
[ ] |
akRight | [√] |
[√] |
[√] |
[√] |
[√] |
[√] |
akBottom | [√] |
[√] |
[ ] |
[ ] |
[ ] |
[√] |
這些錨點屬性設(shè)置完成之后罕袋,運行程序,效果如下:
用代碼設(shè)置和修改 Anchors 錨點屬性的方法:
Edit1 的錨點設(shè)置為 akLeft纫谅、akRight 和 akBottom:
Edit1->Anchors = TAnchors() << akLeft << akRight << akBottom;
Edit1 的錨點在原有基礎(chǔ)上去掉 akTop炫贤,添加 akRight 和 akBottom:
Edit1->Anchors = Edit1->Anchors >> akTop << akRight << akBottom;
相關(guān):
C++ Builder 參考手冊 ? 使用控件的 Anchors 屬性自動調(diào)整位置和大小