我正在尝试复制此页面中包含的示例中的一些代码,并使用这些教程中的一些帮助对其进行修改以在 Iron python 上运行。但是当我走出教程时,我被困住了,我不知道我需要导入哪些模块。
目前我有以下代码
import clr
clr.AddReference("System.Drawing")
clr.AddReference("System.Windows.Forms")
from System.Windows.Forms import Application, Form, Button, Label, DockStyle, AnchorStyles, Panel, Screen, FlowLayoutPanel
class OKWindow(Form):
def __init__(self,InfoTXT):
newlines = 0
screenSize = Screen.GetWorkingArea(self)
STRwidth = 200
STRheight = 30
FORMheight = 160
FORMwidth = 300
self.Text = 'Information'
self.Height = FORMheight
self.Width = FORMwidth
self.flowPanel = FlowLayoutPanel()
#self.flowPanel.AutoSize = true
#self.flowPanel.AutoSizeMode = AutoSizeMode.GrowAndShrink
self.Controls.Add(flowPanel)
label = Label()
label.Text = InfoTXT
label.Top = 30
label.Left = 50
label.Height = STRheight
label.Width = STRwidth
button = Button()
button.Text = "OK"
button.Width = 100
button.Top = FORMheight - 80
button.Left = (FORMwidth / 2) - 50
print button.Anchor
button.Anchor = AnchorStyles.Bottom
button.Click += self.buttonPressed
self.Controls.Add(label)
self.Controls.Add(button)
def buttonPressed(self, sender, args):
Application.Exit()
def information(Message):
Application.EnableVisualStyles()
form = OKWindow(Message)
Application.Run(form)
(注意:代码不准确,因为它当前在 OCTGN 的 Iron python 脚本引擎中运行。我从其他地方调用 information() 函数,并带有一些文本,例如information('Important Announcement')
。)
因此,一旦我尝试执行此代码,代码就会中止self.flowPanel = FlowLayoutPanel()
。如果我注释掉 flowPanel 行,windows 窗体会正常显示。
所以在我看来,我没有正确导入需要的模块。不幸的是,我不知道要加载什么。我尝试加载我认为合适的任何内容,但似乎没有一个对我有用。
如何确定要从哪个模块导入System.Windows.Forms
以便在我的代码中创建 FlowLayoutPanel?一般来说,如何确定要导入什么以获得相关功能?