在未指定路径的情况下使用 Save Present() 后检索路径和文件名我正在使用 SavePresentation() 将日记保存到 ppt 中。但是,我想让用户指定保存ppt的路径和文件名。如果在未指定路径/文件名的情况下指定保存演示文稿(),JMP 会很好地弹出操作系统“保存文件”窗口,该窗口允许用户导航到他们想要的任何文件夹,并指定他们想要的任何文件名。问题是,当使用这种方法时,我还没有找到一种方法来获取保存文件的路径和文件名。
有人有这个问题的解决方案吗?
回复:在未指定路径的情况下使用 Save Present() 后检索路径和文件名温迪,
这已经非常接近了......
感谢你的辉煌
回复:在未指定路径的情况下使用 Save Present() 后检索路径和文件名嘿,吉姆。
看起来带有 Save 选项的 Pick File() 与您所描述的非常接近:
rbiv << Save Presentation( path = Pick File("save", "$TEMP", {"PowerPoint|pptx"}, 1, 1) );
Show( path );
/*:
path = "/C:/Users/wemurp/AppData/Local/Temp/myPowerPoint.pptx";<BR />
希望有帮助!
回复:在未指定路径的情况下使用 Save Present() 后检索路径和文件名对不起,吉姆。
我认为我对这个问题的解释与你的技能和知识不一致。
我之前问过一次,发现保存演示文稿返回并记录一个空字符串很奇怪。
许多版本的 JMP 和 Windows 操作系统之前的“默认目录”似乎都可以工作,但随着 PC 中发生的所有后台操作,JMP 改变了“默认目录”的行为。 在 JMP 11 左右,我认为“如果 JMP 选择目录或保存或打开具有上次使用的路径,则通过 JSL 公开该路径将很有用。”
当我之前尝试此操作时,我寻找一种方法来将单击发送到“选择目录”的“选择文件夹”按钮。
类似这样,因为“选择目录”窗口中的焦点位于“选择文件夹”按钮上,并且路径是最后选择的路径。
_xx = 日志捕获(选择目录() << 单击)
但没有任何尝试成功。
因此,一个愿望清单项目是“保存演示文稿”将文件路径写入变量或日志。 因为它当前将空白字符串写入日志和变量 xx = (rbiv << Save Presenter() );这似乎不是一个大问题。但更好的是提供像 Get Path("$Last_Path") 这样的 JSL 函数作为会话变量。
聚苯乙烯 为本书编写的示例应用程序有一个“保存 PowerPoint”菜单项,因此我们为该菜单项编写了自己的选择目录和文件接口,然后使用“保存演示文稿”(带有文件名)。
回复:在未指定路径的情况下使用 Save Present() 后检索路径和文件名我没有找到从 JSL 捕获用户选择的路径/名称的方法。
回复:在未指定路径的情况下使用 Save Present() 后检索路径和文件名摩根女士,
谢谢您的回复。
显然,我未能以任何程度的连贯性来具体说明我的问题。 让我再尝试一次。
如果我使用以下代码:
Names Default To Here( 1 );
Open( "$SAMPLE_DATA/Big Class.jmp" );
biv = bivariate( y( :weight ), x( :height ) );
rbiv = biv << report;
rbiv << Save Presentation( );
它将生成双变量平台输出,然后,因为“保存演示文稿()”没有指定任何路径/文件名,JMP 非常好地打开一个窗口,允许用户导航到他们想要的任何目录,并指定他们想要的任何文件名。

这就是我想要的行为。但是,我需要但不知道如何获取 i 是,在用户单击“保存”并将双变量输出保存到位置和文件名后
“如何确定用户指定的路径/文件名?”。
回复:在未指定路径的情况下使用 Save Present() 后检索路径和文件名吉姆,
有几种方法可以做到这一点。 下面是一些片段,显示了在没有提示的情况下保存演示文稿的两种方法。 我们向 JSL Companion 第二版添加了一个脚本。讨论我们的 BKM(最著名的方法)的脚本,用于使用保存演示并处理缩放问题。
如果我需要创建复杂的 PPTX 输出,我会使用 JSL 为外部程序 p3icli 创建命令,然后使用 Run Program 运行它。
/*
Save Presentation appends if the file exists. This next line assures that only the current programs requested
reports are saved. Another option is to add a datetime to the filename for version control.
*/
if( FileExists(usr_aa["pptPath"]), DeleteFile(usr_aa["pptPath"]) );
Copy File(templ,usr_aa["pptPath"]);
result << Save Presentation( usr_aa["pptPath"], Insert(2), Outline Titles("BottomRight"), "PNG");
wait(2);
result << Close Window(NoSave);
) 或者使用这个语法
nme = "c:\temp\ROR Report-" || Format(Today(),"yyyymmdd") ||".pptx";
tjwin << Save Presentation(nme, Template("$JSL_Companion/ROR_BaseTemplate.pptx"),"PNG" );
描述: P3ICLI(PowerPoint 图片插入命令行界面)是一个
脚本驱动的应用程序,插入用户选择的图片和/或图形文件
到 Microsoft PowerPoint (R) 幻灯片中。
P3ICLI 可从以下位置下载https://sourceforge.net/projects/p3icli/
它记录了一个 JSL 示例,包括 ppt 模板、JSL 脚本、解释和结果
pptx 文件位于https://p3icli.sourceforge.io/jsl_example.html 。 我们喜欢它提供的灵活性
自定义大小、布局、标题和说明文字。 注意:生成的 PPTX 的链接位于网页的最后一行。