相信哪天ironpython会有自己的pythonw,现在,我先用几行C#代码制作一个demo,一般的winform程序,也足够用了。
编译,运行,传入一个命令行:TestPythonWnd.py
内容如下:
运行效果如图:
点击效果 如图:
using System; using IronPython.Hosting; public class PythonWin { public static void Main( string[] args ) { PythonEngine engine = new PythonEngine(); engine.RunFile( args[ 0 ] ); } } |
内容如下:
import clr clr.AddReference( "System.Windows.Forms" ) clr.AddReference( "System.Drawing" ) from System.Windows.Forms import * from System.Drawing import * wnd = Form() wnd.Text = "Test Pythonw" bt = Button( Text="Change Parent BackColor") wnd.Controls.Add( bt ) wnd.Size = Size( 200 , 200 ) bt.Dock = DockStyle.Top class ClickRender: def setBackColor( self , clr ): self.backColor = clr def onClick( self , obj ,arg ): obj.Parent.BackColor = self.backColor render = ClickRender() render.setBackColor( Color.Blue ) bt.Click += render.onClick Application.Run( wnd ) |
运行效果如图:
点击效果 如图: