首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >AE脚本:如何在ExtendScript中创建一个可以随着面板宽度实时伸展的按钮?

AE脚本:如何在ExtendScript中创建一个可以随着面板宽度实时伸展的按钮?
EN

Stack Overflow用户
提问于 2020-02-01 03:05:58
回答 1查看 599关注 0票数 0

因为我们不能在ExtendScript中设置宽度的百分比。

我正在寻找一种方法,在调整面板大小的同时,我的按钮可以实时拉伸/调整大小。

我试着设置填充值-

代码语言:javascript
复制
Button.preferredSize.width = 200;
Button.preferredSize.height = 80;
saveButton.alignment = ['fill', 'fill'];

没有起作用。已尝试将按钮宽度与面板宽度匹配

Button.preferredSize.width = panel.width;

没有起作用。

EN

回答 1

Stack Overflow用户

发布于 2020-02-02 12:40:58

只需将其对齐方式设置为水平填充即可。

您还可以指定它的大小/ preferredSize并更改它的默认高度。

此外,为了调整UI的大小,您需要添加“onResize/ onResize”事件侦听器,并告诉布局使用resize()调整大小。

下面是一个例子:

代码语言:javascript
复制
function myPanel (thisObj)
{
  var win = {};

  win.pal = thisObj instanceof Panel ? thisObj : new Window('palette', '', undefined, {resizeable: true});

  if (win.pal === null) return win.pal;

  var res = "Group {orientation: 'column', alignment: ['fill', 'fill'], preferredSize: [128, 64], \
    myButton: Button {text: 'My Button Name', alignment: ['fill', 'center']}\
  }";

  win.ui = win.pal.add(res);
  win.ui.myButton.minimumSize = [128, 32];

  win.pal.layout.layout(true);

  win.pal.onResizing = win.pal.onResize = function ()
  {
    this.layout.resize();
  };

  if (win.pal !== null && win.pal instanceof Window)
  {
    win.pal.show();
  }

  return win;
}

myPanel(this);

编辑:您也可以设置按钮的宽度百分比,通过它的容器大小。例如:win.ui.myButton.size = [ 0.9 * win.ui.size[0], 32];

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60009871

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档