创建窗口 gui.GeDialog

居中,可调整大小
image.png

  1. import c4d
  2. from c4d import gui
  3. class mainGUI(gui.GeDialog):
  4. def __init__(self):
  5. pass
  6. def main():
  7. win = mainGUI()
  8. win.Open(c4d.DLG_TYPE_MODAL_RESIZEABLE, xpos=-2, ypos=-2, defaultw=300, defaulth=300)
  9. if __name__=='__main__':
  10. main()

窗口标题 SetTitle

image.png

  1. import c4d
  2. from c4d import gui
  3. class mainGUI(gui.GeDialog):
  4. def __init__(self):
  5. pass
  6. def CreateLayout(self):
  7. self.SetTitle("修改窗口标题名称") #修改窗口标题
  8. return True
  9. def main():
  10. win = mainGUI()
  11. win.Open(c4d.DLG_TYPE_MODAL_RESIZEABLE, xpos=-2, ypos=-2, defaultw=300, defaulth=300)
  12. if __name__=='__main__':
  13. main()

添加按钮 AddButton

image.png

  1. import c4d
  2. from c4d import gui
  3. ID_OK = 10001 #控件ID
  4. class mainGUI(gui.GeDialog):
  5. def __init__(self):
  6. pass
  7. #创建窗口
  8. def CreateLayout(self):
  9. self.SetTitle("这是一个按钮的例子")
  10. self.AddButton(ID_OK, c4d.BFH_SCALEFIT, 0,20,"我是按钮,求点赞") #添加按钮
  11. return True
  12. #按钮动作
  13. def Command(self, id, msg):
  14. if id == ID_OK:
  15. gui.MessageDialog('谢谢你给我点赞!点击确定,我会关闭窗口')
  16. self.Close() #关闭窗口
  17. return True
  18. def main():
  19. win = mainGUI()
  20. win.Open(c4d.DLG_TYPE_MODAL_RESIZEABLE, xpos=-2, ypos=-2, defaultw=300, defaulth=300)
  21. if __name__=='__main__':
  22. main()


添加复选框 AddCheckbox

image.png

  1. import c4d
  2. from c4d import gui
  3. ID_OK = 10001 #控件ID
  4. ID_CheckBox = 10002 #复选框
  5. class mainGUI(gui.GeDialog):
  6. def __init__(self):
  7. pass
  8. #创建窗口
  9. def CreateLayout(self):
  10. self.SetTitle("这是一个复选框的例子")
  11. self.AddCheckbox(ID_CheckBox, c4d.BFH_CENTER, 0,0,"新郎,你愿意娶新娘为妻吗?") #添加复选框
  12. self.AddButton(ID_OK, c4d.BFH_SCALEFIT, 0,20,"确定")
  13. return True
  14. #指挥你的控件
  15. def Command(self, id, msg):
  16. if id == ID_OK:
  17. if self.GetBool(ID_CheckBox) == True:
  18. gui.MessageDialog('新娘:我也愿意')
  19. else:
  20. gui.MessageDialog('新娘:滚,你这个渣男')
  21. gui.MessageDialog('牧师:我愿意')
  22. self.Close() #关闭窗口
  23. return True
  24. def main():
  25. win = mainGUI()
  26. win.Open(c4d.DLG_TYPE_MODAL_RESIZEABLE, xpos=-2, ypos=-2, defaultw=300, defaulth=300)
  27. if __name__=='__main__':
  28. main()