DCL对齐列
我正在尝试格式化DCL窗口。: text {
label = "Test DCL.";
alignment = centered;
}
: row {
: boxed_column {
width = 10;
alignment = left;
fixed_width = true;
: text {
label = "1.";
alignment = centered;
}
: text {
label = "2.";
alignment = left;
}
}
: boxed_column {
alignment = centered;
width = 20;
fixed_width = true;
: text {
label = "3.";
alignment = right;
}
: text {
label = "4.";
alignment = left;
}
}
}
: row {
: edit_box {
label = "Test:";
key = "Edit4";//Edit1$ from lsp file
edit_width = 150.0;
alignment = left;
fixed_width = true;
}
}
窗口如下所示:
如何向左移动列不会改变其宽度。
如下图所示。
将fixed_width=true应用于行平铺:
test : dialog
{
: text
{
label = "Test DCL.";
alignment = centered;
}
: row
{
fixed_width = true;
: boxed_column
{
width = 10;
alignment = left;
fixed_width = true;
: text
{
label = "1.";
alignment = centered;
}
: text
{
label = "2.";
alignment = left;
}
}
: boxed_column
{
alignment = centered;
width = 20;
fixed_width = true;
: text
{
label = "3.";
alignment = right;
}
: text
{
label = "4.";
alignment = left;
}
}
}
: row
{
: edit_box
{
label = "Test:";
key = "Edit4"; //Edit1$ from lsp file
edit_width = 150.0;
alignment = left;
fixed_width = true;
}
}
ok_cancel;
} 谢谢你的帮助。
我还有一个问题。
如何使用标签制作这种格式的编辑框。
//---------------------------------------------------------------------------------------------------------
// MyEditText
//---------------------------------------------------------------------------------------------------------
MyEditText : dialog {
key = "Title";
label = "";//Title$ from lsp file
: text {
label = "DCL test.";
alignment = centered;
}
initial_focus = "Edit1";
spacer;
//: row {
: column {
width = 5.09;
fixed_width = true;
spacer;
}
: edit_box {
label = "BLK:";
key = "Edit1";//Edit1$ from lsp file
edit_width = 30.0;
alignment = left;
fixed_width = true;
}
initial_focus = "Edit2";
spacer;
//: row {
: column {
width = 5.09;
fixed_width = true;
spacer;
//: text {
//key = "Prompt1";
//label = "";//Prompt from lsp file
//}
}
: edit_box {
label = "Attrib:";
key = "Edit2";//Edit1$ from lsp file
edit_width = 30.0;
alignment = left;
fixed_width = true;
}
//}
initial_focus = "Edit3";
spacer;
//: row {
: column {
width = 5.09;
fixed_width = true;
spacer;
// : text {
//key = "Prompt2";
//label = "";//Prompt from lsp file
// }
}
: edit_box {
key = "Edit3";//Edit1$ from lsp file
edit_width = 100.0;
label = "Name:";
alignment = left;
fixed_width = true;
}
//}
spacer;
: row {
fixed_width = true;
alignment = centered;
: ok_button {
width = 10;
}
: cancel_button {
width = 10;
}
}
}//MyEditText
代码生成了一个如下图所示的窗口。
如何将edit_框对准左侧,如下图所示。
你好
将edit_box平铺分成两块,如下所示:
: row { : text { label = "BLK:"; } : edit_box { key = "Edit1";}}
然后添加一个具有特定宽度值的空间平铺,以符合您想要的对齐方式。 不需要单独的文本/编辑框平铺行,只需调整宽度属性以考虑最大的标签:
test : dialog
{
spacer;
: edit_box
{
key = "edit1";
label = "Block:";
width = 42.0;
edit_width = 30.0;
fixed_width = true;
alignment = left;
}
: edit_box
{
key = "edit2";
label = "Attrib:";
width = 42.0;
edit_width = 30.0;
fixed_width = true;
alignment = left;
}
: edit_box
{
key = "edit3";
label = "Name:";
width = 112.0;
edit_width = 100.0;
fixed_width = true;
alignment = left;
}
ok_cancel;
}
上述结果:
我听从了塔瓦的建议,最终得到了一些不错的结果:
test1 : dialog
{ label = "EB Alignment test"; spacer_1;
: column
{ alignment = centered; fixed_width = true; children_alignment = centered;
: row { children_alignment = right; : text { label = "BLK:"; fixed_width = true; } : edit_box { key = "eb1"; fixed_width = true; }}
: row { children_alignment = right; : text { label = "Attrib:"; fixed_width = true; } : edit_box { key = "eb2"; fixed_width = true; }}
: row { children_alignment = right; : text { label = "Name:"; fixed_width = true; } : edit_box { key = "eb3"; fixed_width = true; }}
}
spacer_1; ok_only; spacer_1;
}
test2 : dialog
{ label = "EB Alignment test"; spacer_1;
: column
{ alignment = centered; fixed_width = true; children_alignment = centered;
: row { children_alignment = right; : text { label = "Name (First and Second):"; fixed_width = true; } : edit_box { key = "eb1"; fixed_width = true; }}
: row { children_alignment = right; : text { label = "Age:"; fixed_width = true; } : edit_box { key = "eb2"; fixed_width = true; }}
: row { children_alignment = right; : text { label = "Address:"; fixed_width = true; } : edit_box { key = "eb3"; fixed_width = true; }}
: row { children_alignment = right; : text { label = "Email:"; fixed_width = true; } : edit_box { key = "eb4"; fixed_width = true; }}
}
spacer_1; ok_only; spacer_1;
}
他们让我想起了他在暖通空调/管道程序中的精彩对话。
然而,李的建议似乎更适合OP的对话问题。
干得好,谢谢你的好话。
页:
[1]