在Blender中创建一个错误对话框

时间:2014-09-08 15:36:06

标签: python dialog popup blender

我遇到了问题,我需要在出现问题时让错误对话框出现

我刚发现这个artikle: http://wiki.blender.org/index.php/Dev:2.5/Py/Scripts/Cookbook/Code_snippets/Interface#An_error_dialog 但我真的不懂代码,我只需要在屏幕上放一个简单的错误对话框,这可能就是一个例子:

if .....
then let the pop up with this message come up : " .... "
else ........

1 个答案:

答案 0 :(得分:1)

Blender使用运算符来执行操作或任务,在此示例中,MessageOperator是一个bpy.types.Operator子类,负责显示对话框。当调用invoke()时,它会显示wm.invoke_popup()传递self作为运算符的对话框,该对话框设置了绘图功能以处理在对话框中显示内容。

稍后在scanFile中创建MessageOperator并使用

调用
bpy.ops.error.message('INVOKE_DEFAULT', 
            type = "Error",
            message = 'Found "return" on line %d' % n)

bpy.ops.error.messagebpy.ops构成,作为所有运算符的容器,后跟error.message,它由运算符类中的bl_idname定义。传递的两个命名值存储在typemessage的类属性中,并在显示对话框时使用。

bpy.utils.register_class()调用用于在blender的数据结构中注册这些新定义的类,以便可以使用它们。

Blender的使用惯例不像大多数GUI应用程序那样使用弹出对话框。通过使用运算符report() function将通知或错误消息传递给用户更为常见。这会在徽标旁边的blender标题中显示一条消息。