您当前的位置: 首页 > 

插件开发

暂无认证

  • 2浏览

    0关注

    492博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

adobe脚本插件开发-插件类型-Add函数-脚本控件-用户接口

插件开发 发布时间:2022-03-12 08:04:07 ,浏览量:2

文章目录
    • 1.容器
    • 2.用户控件
    • 3.范例代码
      • 3.1按钮
      • 3.2静态文本
      • 3.3编辑框
      • 3.4多选框
      • 3.5单选框
      • 3.6滚动条
    • 4.显示图片
    • 5.提示和警告
    • 6.作者答疑
  在开发adobe脚本的过程中,会遇到很多界面方面的问题,在统一性方面,adobe提供了支持大多数版本的界面显示:

1.容器 名称功能Panel通常用于可视化地组织相关控件。设置text属性以定义出现在面板顶部的标题。一个可选的borderStyle创建属性控制边框的外观画在面板周围。你可以使用面板作为分隔符:那些宽度为0的面板显示为垂直线和高度为0的显示为水平线。Group用于可视化地组织相关控件。与面板不同,组没有标题或可见边框。您可以使用它们来创建控件的层次结构,并在较大的面板中对某些控件组的布局属性进行精细控制。例如,见92页的“创建更复杂的安排”。TabbedPanel只包含选项卡对象作为直接子对象的面板。它有一个包含当前活动的选项卡子的选择属性。当选择属性的值发生变化时,无论是用户选择不同的选项卡,还是通过脚本设置属性,TabbedPanel都会收到一个onChange通知。title属性提供了一个可选的标签;titleLayout属性将标签放置在面板中。Tab一个常规容器,它的父容器是一个选项卡面板,带有一个显示可本地化文本值的可选择选项卡。它的大小和位置由父节点决定。 2.用户控件

  这些类型的控件对象包含在窗口、面板和组中,并提供特定类型的显示和用户交互。控件实例是通过将对应的type关键字传递给窗口或容器的add()方法来创建的;参见“控件类型和创建参数”在124页。   这些示例没有在创建时显式地设置边界,因为通常设置首选大小,然后让布局管理器设置边界更有用;参见第86页的“自动排版”。

名称功能Button通常用于用户单击按钮时从窗口发起一些动作;例如,接受一个对话框的当前设置,取消一个对话框,打开一个新的对话框,等等。设置text属性,以分配一个标签来标识按钮的功能。onClick回调方法提供行为。IconButton显示带有或不带有文本标签的图标的按钮。与文本按钮一样,通常会在单击时启动一个动作。image属性标识图标图像;参见第72页的“显示图像”。title或text属性提供了一个可选的标签;titleLayout属性放置与图像相关的标签。onClick回调方法提供行为。Image显示图标图像。image属性标识图标图像;参见第72页的“显示图像”。title属性提供了一个可选的标签;titleLayout属性放置与图像相关的标签。StaticText通常用于显示不打算由用户直接操作的文本字符串,如信息消息或标签。下面的例子创建了一个面板,并添加了几个StaticText元素:EditText允许用户输入文本,当对话框解散时,文本将返回到脚本。EditText元素中的文本可以被选择、复制和粘贴。设置text属性以分配元素中显示的初始文本,并读取它以获取用户输入或修改的当前文本值。设置textselection属性,以用新文本替换当前选择,或在光标(插入点)处插入文本。读取此属性以获取当前选择(如果有的话)。这个例子添加了一些EditText元素,初始值用户可以接受或替换.注意第二个EditText字段的creation属性,其中multiline:true表示一个可以输入长文本字符串的字段。文本换行显示为多行。Checkbox允许用户设置布尔状态。设置text属性,以分配出现在可单击框旁边的标识文本字符串。用户可以单击以选择或取消选择该框,当选中时该框会显示一个复选标记。选中(选中)时为true,不选中时为false。当您创建一个复选框时,您可以设置它的value属性来指定它的初始状态和外观。RadioButton允许用户在多个选项中选择一个。设置text属性,以分配出现在可单击按钮旁边的标识文本字符串。当按钮被选中时,该值为true。该按钮以特定于平台的方式显示状态,例如,带有填充或空点。通过一个接一个地创建所有相关元素,可以将一组相关的单选按钮分组。当任何按钮的值变为true时,组中所有其他按钮的值变为false。当你创建一组单选按钮时,你应该设置其中一个的状态为true。Progressbar通常用于显示耗时操作的进度。有颜色的条表示控制区域的百分比,表示操作完成的百分比。value属性反映并控制相对于最大值(maxvalue)可见区域的多少颜色。默认情况下,范围是0到100,所以当操作完成一半时,值=50。Slider通常用于在一定范围内选择值。滑块是带有可拖动指示器的水平条,您可以单击滑条上的一个点,将指示器跳转到该位置。value属性在minvalue和maxvalue确定的范围内反映和控制指示器的位置。默认情况下,范围是0到100,因此设置value=50会将指示器移动到条的中间。Scrollbar与滑块一样,滚动条是一个带有可拖动指示器的条。它还有" stepper ",每个端点上的按钮,您可以单击该按钮来按stepdelta属性中的数量跳跃指示器。如果单击指示器外面的条上的一个点,指示器将按jumpdelta属性中的数量跳跃。你可以创建水平或垂直方向的滚动条;如果width大于height,则为水平,否则为垂直。创建滚动条的add方法的参数定义了value、minvalue和maxvalue属性的值。滚动条通常创建一个关联的EditText字段来显示滚动条的当前值,并允许设置滚动条的位置为特定的值。这个例子在一个面板中创建了一个带有静态文本和EditText元素的滚动条ListBox这些控件显示项的列表,这些列表由items属性中的listtitem对象表示。可以使用基于0的索引访问该数组中的项。一个列表框控件显示一个选项列表。在创建对象时,指定它是否允许用户只选择一个或多个项。如果一个列表包含的项目超过了可用区域所能显示的数量,则可能会出现一个滚动条,允许用户滚动所有列表项目。一个列表框可以在多个列中显示项目;参见第73页的“创建多列列表”。DropDownListDropDownList控件显示单个可见项。单击该控件时,会下拉列表,并允许您选择列表中的其他项之一。下拉列表可以有不可选择的分隔项,用于可视化地分隔相关项的组,就像在菜单中一样。TreeView除了项可以有子项之外,树状视图控件类似于列表框。有子项目可以展开或折叠,以显示或隐藏子项目。子项目可以依次包含子项目。title属性提供了一个可选的标签;titleLayout属性放置与列表相关的标签。您可以在创建list对象时指定选择项,或者在创建之后使用list对象的add()方法。您可以使用列表对象的remove()和removeAll()方法以编程方式删除项。ListItem添加到或插入到任何类型的列表控件中的项都是列表项对象,其属性可以通过脚本进行操作。列表元素可以是以下类型:item:任何类型的列表中的典型条目。它显示文本或图像,并且可以被选中。要显示一个图像,设置项目对象的image属性;参见第72页的“显示图像”。separator: separator是下拉列表中不可选择的视觉元素。尽管它具有text属性,但该值将被忽略,并且该项将显示为水平线。node:树状视图控件中可显示和可选择的项,它可以包含其他列表项对象,包括其他类型为node的项。FlashPlayer在ScriptUI窗口中运行一个Flash电影。它的控制方法允许你从SWF文件中加载电影并控制播放。参见第145页的“FlashPlayer控制功能”。您还可以使用控件对象与Flash应用程序通信,调用ActionScript方法,并使在Adobe应用程序脚本中定义的JavaScript方法对Flash ActionScript代码可用。参见86页的“从ScriptUI脚本调用ActionScript函数”。title属性提供了一个可选的标签;titleLayout属性放置与玩家相关的标签。 3.范例代码 3.1按钮
var dlg = new Window('dialog', 'Alert Box Builder');
dlg.btnPnl = dlg.add('panel', undefined, 'Build it');
dlg.btnPnl.testBtn = dlg.btnPnl.add('button', undefined, 'Test');
dlg.btnPnl.buildBtn = dlg.btnPnl.add('button', undefined, 'Build',{name:'ok'});
dlg.btnPnl.cancelBtn = dlg.btnPnl.add('button', undefined, 'Cancel',{name:'cancel'});
dlg.show();
3.2静态文本
var dlg = new Window('dialog', 'Alert Box Builder');
dlg.msgPnl = dlg.add('panel', undefined, 'Messages');
dlg.msgPnl.titleSt = dlg.msgPnl.add('statictext', undefined, 'Alert box title:');
dlg.msgPnl.msgSt = dlg.msgPnl.add('statictext', undefined, 'Alert message:');
dlg.show();
3.3编辑框
var dlg = new Window('dialog', 'Alert Box Builder');
dlg.msgPnl = dlg.add('panel', undefined, 'Messages');
dlg.msgPnl.titleSt = dlg.msgPnl.add('statictext', undefined, 'Alert box title:');
dlg.msgPnl.titleEt = dlg.msgPnl.add('edittext', undefined, 'Sample Alert');
dlg.msgPnl.msgSt = dlg.msgPnl.add('statictext', undefined, 'Alert message:');
dlg.msgPnl.msgEt = dlg.msgPnl.add('edittext', undefined, '', {multiline:true});
dlg.show();
3.4多选框
// Add a checkbox to control the buttons that dismiss an alert box
dlg.hasBtnsCb = dlg.add('checkbox', undefined, 'Should there be alert buttons?');
dlg.hasBtnsCb.value = true;
3.5单选框
var dlg = new Window('dialog', 'Alert Box Builder');
dlg.alertBtnsPnl = dlg.add('panel', undefined, 'Button alignment');
dlg.alertBtnsPnl.alignLeftRb = dlg.alertBtnsPnl.add('radiobutton',undefined, 'Left');
dlg.alertBtnsPnl.alignCenterRb = dlg.alertBtnsPnl.add('radiobutton',undefined, 'Center');
dlg.alertBtnsPnl.alignRightRb = dlg.alertBtnsPnl.add('radiobutton',undefined, 'Right');
dlg.alertBtnsPnl.alignCenterRb.value = true;
dlg.show();
3.6滚动条
dlg.sizePnl = dlg.add('panel', undefined, 'Dimensions');
dlg.sizePnl.widthSt = dlg.sizePnl.add('statictext', undefined,'Width:');
dlg.sizePnl.widthScrl = dlg.sizePnl.add('scrollbar', undefined,300, 300, 800);
dlg.sizePnl.widthEt = dlg.sizePnl.add('edittext');
4.显示图片

  你可以在图像或图标按钮控件中显示图标图像,也可以在列表框或下拉列表控件中以字符串的形式或字符串的形式显示图像。在每种情况下,图像都是通过设置元素的image属性来定义的。你可以将它设置为ScriptUIImage对象;一个命名的图标资源;一个文件对象;或包含图标图像的文件的路径名,或该文件的别名或快捷方式(参见第39页的“指定路径”)。   图标的图像数据可以是便携式网络图形(PNG)格式,也可以是联合摄影专家组(JPEG)格式。有关这些格式的详细信息,请参见http://www.libpng.org和http://www.jpeg.org/。   您可以随时设置或重置image属性,以更改元素中显示的图像。脚本环境可以定义图标资源,这些资源可以按名称提供给脚本。要指定图标资源,将控件的图像属性设置为资源的JavaScript名称,或者在创建控件时按名称引用资源。例如,要创建一个带有应用程序定义的图标资源的按钮:

myWin.upBtn = myWin.add ("iconbutton", undefined, "SourceFolderIcon");

例如,Photoshop CC定义了这些图标资源:

Step1Icon
Step2Icon
Step3Icon
Step4Icon
SourceFolderIcon
DestinationFolderIcon

  如果脚本没有显式设置显示图标图像的元素的preferredSize或size属性,preferredSize的值由图标图像的尺寸决定。如果尺寸值显式设置为小于实际图像图形的尺寸,则显示的图像将被剪切。如果它们的尺寸设置为大于图像图形的尺寸,则显示的图像将在更大的空间中居中。图像永远不会缩放到适合可用空间。

5.提示和警告

  Window类中的静态函数是全局可用的,用于在标准对话框中显示短消息。宿主应用程序控制这些简单对话框的外观,因此它们与应用程序显示的其他警告和消息框一致。您可以经常使用这些标准对话框与用户进行简单的交互,而不必设计自己的专用对话框。在Window类上使用静态函数alert、confirm和prompt来使用您自己的消息调用这些对话框。您不需要创建一个窗口对象来调用这些函数。

6.作者答疑

  如有疑问,请留言。

提示: 作者知了-联系方式1 提示: 作者知了-联系方式2

关注
打赏
1665481431
查看更多评论
立即登录/注册

微信扫码登录

0.0394s