03 如何制作AE脚本的用户交互界面

版权声明:本文为博主原创文章,转载请保留原作者名和原文链接。 https://blog.csdn.net/Likianta/article/details/79341187

AE UI界面可以用Java代码来写,也可以用lieP9的P9 ScriptUI Builder脚本工具来制作,后者的优势是所见即所得,对于UI这种交互界面的编写来说特别方便。

制作UI界面

下面的布局代码是由P9 ScriptUI Builder生成的代码改进后得到的:

布局代码:

function createUI() {
    // 使用P9 UI创建用户交互界面

    // 创建窗口和面板
    // 第一个参数是控件类型
    // 第二个参数是标题名称
    // 第三个是控件位置(“100,100”是相对电脑屏幕左上角的间距,“600,575”是窗口右下角的坐标,因此窗口的宽度为500px,高度为475px)
    // 第四个参数是窗口属性
    win = new Window("palette", scriptName, [100,100,600,575], {resizeable:true});
    // 在该窗口中添加一个面板(panel),位置是相对**父控件**的位置(即充满父窗口)
    panel = win.add("panel", [0,0,500,475]);

    // 创建一个含有四纵列的列表控件(listbox)
    listbox = panel.add("listbox", [5,25,490,375], '', {
        // 花括号内是第四个参数,定义listbox的专有属性
        numberOfColumns: 4, // 列数为4
        showHeaders: true, // 显示每列的标题头
        columnTitles: ['id', 'start', 'end', 'content'], // 标题头名称依次是编号、起始时间、结束时间和文本内容
        columnWidths: [45,95,95,235]}); // 定义每列的宽度

    // 颜色编辑框,位于图中的右上角,用于以此作为文本色值
    color = panel.add("edittext", [402,5,490,23], "color", {
        multiline:false, // 不允许多行显示
        wantReturn:false}); // 不允许回车换行

    // 文本编辑框,位于图中的底部,用于输入当前字幕内容
    edt = panel.add("edittext", [5,380,490,430], "", {
        multiline:true, // 允许文本自动换行
        wantReturn:true}); // 允许回车换行

    // 底部的一排按钮控件
    // 依次为:起始时间、结束时间、删除、生成图层、导入外部文件
    btn_1 = panel.add("button", [10,440,98,465], "Start");
    btn_2 = panel.add("button", [108,440,196,465], "End");
    btn_3 = panel.add("button", [206,440,294,465], "Delete");
    btn_4 = panel.add("button", [304,440,392,465], "Generate");
    btn_5 = panel.add("button", [402,440,490,465], "Import");

    // 最后记得把窗口显示出来
    win.show();
}
createUI(); // 执行该函数

界面功能简要说明

下章链接:04 LK脚本基本框架


参考

猜你喜欢

转载自blog.csdn.net/Likianta/article/details/79341187
03