Inside.Net

自由与繁荣的国度

博客园 首页 新随笔 联系 订阅 管理
  12 Posts :: 0 Stories :: 29 Comments :: 0 Trackbacks

公告

  最近在研究WOW Interface,由于提供的函数和允许使用的语言是LUA所以顺便找了一下看有没有和.NET CLR交互的版本,结果让我找到了,嘿嘿!下面让我们看一下在.NET中怎么使用LUA
  我们看下官方网站提供的例子来初窥Lua.Net

 

   luanet = require("luainterface"
    luanet.load_assembly(
"System.Windows.Forms"
    luanet.load_assembly(
"System.Drawing"
    
    Form 
= luanet.import_type("System.Windows.Forms.Form"
    Button 
= luanet.import_type("System.Windows.Forms.Button"
    Point 
= luanet.import_type("System.Drawing.Point"
     
    mainForm 
= Form() 
    buttonOk 
= Button() 
    buttonCancel 
= Button() 
    
    buttonOk.Text 
= "Ok" 
    buttonCancel.Text 
= "Cancel" 
    buttonOk.Location 
= Point(10,10
    buttonCancel.Location 
= Point(buttonOk.Left, buttonOk.Height + 
      buttonOk.Top 
+ 10
    mainForm.Controls:Add(buttonOk) 
    mainForm.Controls:Add(buttonCancel) 
    mainForm.StartPosition 
= 
      import_type(
"System.Windows.Forms.FormStartPosition").CenterScreen 
    
    function handleMouseUp(sender,args) 
      print(sender:ToString() .. 
" MouseUp!"
    end 
    
    handlerUp 
= buttonOk.MouseUp:Add(handleMouseUp) 
    handlerClick 
= buttonCancel.Click:Add(os.exit) 
    
    mainForm:ShowDialog() 



由于还没有可视化编程环境的支持,用Lua.Net写一个WinForm程序可以用变态来形容,所有的控件要自行添加到Controls集合中,并且还要自行指定在窗体中的位置,看看buttonOk.Location = Point(10,10);就知道了,这种非可视化的开发非常的不方便。使用lua.net的唯一理由可能是你需要调用一些用lua写的函数,呵呵
下面给出官方网站:
http://bandodalua.lua.inf.puc-rio.br/luanet/

posted on 2005-04-13 10:22 Bluefee.Net 阅读(...) 评论(...) 编辑 收藏