【问题标题】:getOpenFileName in Python 3DS MAX?Python 3DS MAX中的getOpenFileName?
【发布时间】:2015-11-18 15:47:57
【问题描述】:

我很难找到函数 getOpenFileName,它基本上可以让您搜索文件(基本上是 OpenFileDialog)。

我想知道它是否真的在 MaxPlus 库中,我想知道其他人是否知道它是否在某个地方,或者是否有任何方法可以调用它。

这是 Maxscript 中的一个示例:

f = getOpenFileName caption:"File:" \types:"Text file (*.txt)|*.txt|"

提前致谢。

【问题讨论】:

    标签: python openfiledialog 3dsmax maxscript reader


    【解决方案1】:

    好吧,也许:

    MaxPlus.Core.EvalMAXScript('getOpenFileName caption:"File:" \types:"Text file (*.txt)|*.txt|"')
    

    :)

    说真的:试试 MaxPlus 中 FileManager 的 DoMaxFileSaveAsDlg()

    Reference

    【讨论】:

    • 我也试过这条线,但我很难弄清楚如何在 python 上将路径作为字符串来开始阅读:S。如果我发现了,我会告诉你的! :D
    • 这个路径作为字符串有什么问题?也许“\”符号?如果是这样,请使用双符号:“//”。
    • 问题是我不知道如何从 Maxscript 命令中获取路径作为值,所以我可以在 Python 中打开它。比如:MaxPlus.Core.EvalMAXScript('file = getOpenFileName caption:"File:" \types:"Text file (*.txt)|*.txt|"') filepath = MaxPlus.Core.EvalMAXScript('file') print filepath
    • MaxScripts 正在返回 PFValues,只需使用:filepath = MaxPlus.Core.EvalMAXScript('file').GetStr() 我要到星期一才能检查这个,但应该可以。此外,您可以在 Python API 中检查 cvurrent 文件的路径,方法是:FileManager.GetFileNameAndPath()
    • 我也试过了,但是用另一种方式,尝试了完全相同的方式并抛出无效参数,也许现在以另一种方式调用字符串转换。
    【解决方案2】:

    4 年后,我遇到了同样的问题,这是怎么做的(这里是一个 'getSaveFileName' 但原理是一样的):

    try:
        filepath = MaxPlus.Core.EvalMAXScript('getSaveFileName \
        caption:"FBX Destination Folder" \
        types:"Object Preset(*.fbx)|*.fbx" \
        historyCategory:"FBXObjectPresets";').Get()
    except:
        print("No path selected. Export Cancelled.")
        return
    print("The filepath is: "+filepath)
    

    【讨论】:

      猜你喜欢
      • 2017-09-05
      • 2019-05-14
      • 1970-01-01
      • 2016-08-13
      • 1970-01-01
      • 1970-01-01
      • 2014-09-24
      • 2018-08-07
      • 2010-09-30
      相关资源
      最近更新 更多