我在Vectorworks (CAD应用程序)中使用python来执行一些脚本任务。Vectorworks提供了一个可视化的编程界面,比如蚱蜢,它的引擎盖下有python,叫做“木偶”。
现在我有了以下问题。Vectorworks提供了一个允许输入字符串的字符串“节点”。效果很好,但是:如果我尝试通过在两个单词之间按ctrl+键输入带有行中断的文本,python代码就会停止,并会收到一条错误消息:'EOL同时扫描字符串文字‘。
刺“节点”的底层python代码如下所示。问:是否有一种方式来修改代码,以接受带换行的字符串?
问题是:用户通过在父应用程序(Vectorworks)提供的对话框中输入文本来进行输入。
因此,解决这个问题的唯一方法是找出如何修改下面所示的代码来处理输入。代码的“核心”只由两行代码组成。因此,解决这个问题可能是不可能的吗?
任何帮助,感谢,亲切的问候,嗯
class Params(metaclass = Marionette.OrderedClass):
#APPEARANCE
#Name
this = Marionette.Node( 'String' )
this.SetDescription('A text string defined in the OIP')
#Input Ports
#OIP Controls
String = Marionette.OIPControl( 'string', Marionette.WidgetType.Text, '')
String.SetDescription('A text string')
#Output Ports
s = Marionette.PortOut()
s.SetDescription('The string')
#BEHAVIOR
def RunNode(self):
#inputs
s = self.Params.String.value
#script
#outputs
self.Params.s.value = shttps://stackoverflow.com/questions/71001142
复制相似问题