我正在使用 Smartclient,v 8.2 (LGPL)。
我有一个可以打开菜单的 MenuButton。按钮右对齐。问题是显示菜单时;菜单的左侧与按钮的左侧对齐,并且没有用于渲染菜单的空间。结果,当我单击菜单按钮时,页面变宽(出现水平滚动条)以便为渲染菜单腾出空间。当菜单被隐藏时,页面恢复正常大小。
有没有办法避免这种情况?我想要的是菜单的右侧与按钮的右侧对齐。
我尝试使用align
菜单的属性,但无论我使用什么值,我总是看到相同的行为。我也设置了overflow= "hidden"
,但仍然是同样的问题。
这是一个小测试用例:
isc.Menu.create({
ID: "menu",
autoDraw: false,
showShadow: true,
shadowDepth: 10,
overflow: "hidden",
align: "right",
data: [
{title: "New", keyTitle: "Ctrl+N", icon: "icons/16/document_plain_new.png"},
{title: "Open", keyTitle: "Ctrl+O", icon: "icons/16/folder_out.png"},
{isSeparator: true},
{title: "Save", keyTitle: "Ctrl+S", icon: "icons/16/disk_blue.png"},
{title: "Save As", icon: "icons/16/save_as.png"}
]
});
isc.MenuButton.create({
ID: "menuButton",
autoDraw: false,
title: "File",
width: 100,
menu: menu
});
isc.HLayout.create({
width: "100%",
members: [
isc.Canvas.create({
width: "*",
height: 24,
backgroundColor: "lightgray"
}),
menuButton
]
})