`
chinapkw
  • 浏览: 110922 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

wxruby 应用(1)

阅读更多

因为最近工作都在用ruby rails 开发网站

 以前用的代码也不用了想写个小程序也索性用ruby来写了。找了一下界面方面的东西。好像用ruby写桌面程序的并不是很,选来选去。。决定用一下wxruby试一下。连学边写。呵

安装比较简单

ruby 代码
  1. gem install wxruby  

装完后可以看到很多现成的例子

C:\ruby\lib\ruby\gems\1.8\gems\wxruby-1.9.1-i386-mswin32\samples

这是我例子的目录。大家可以看着改.呵

我挨着看了一遍。基本的空件也都有了。。截个图比较丰富的

第一个例子就照官方网站的写吧。呵

http://wxruby.rubyforge.org/wiki/wiki.pl?Getting_Started

ruby 代码
  1. # If you installed the wxruby gem, uncomment the following two lines:   
  2.  # require 'rubygems'   
  3.  # gem 'wxruby2-preview' # or the name of the gem you installed    
  4.  require "wxruby" # wxruby 0.6.0   
  5.  # OR   
  6.  require "wx" # wxruby2   
  7.  include Wx    
  8.     
  9.  class MinimalApp < App   
  10.     def on_init   
  11.          Frame.new(nil, -1, "The Bare Minimum").show()   
  12.     end  
  13.  end  
  14.     
  15.  MinimalApp.new.main_loop   

很简单的,就是一个窗口。

下面就稍加改动。写两个字上去吧,第一个"hello word" 我就不那么俗了。写个“hello wxruby”呵

ruby 代码
  1. require 'wx'   
  2. include Wx     
  3.   
  4.  class MinimalApp < App   
  5.     def on_init   
  6.         frame = Frame.new(nil, -1, "My first frame")   
  7.         panel = StaticText.new(frame, -1, 'Hello wxruby!',   
  8.         Point.new(-1,1), DEFAULT_SIZE,   
  9.         ALIGN_CENTER)   
  10.         frame.show   
  11.     end  
  12.  end  
  13.     
  14.  MinimalApp.new.main_loop  

虽然不怎么好看。不过。这也算是我们的第一个ruby窗口了

下面就看一下。这个简单的应用的。。具体含义了。

 

ruby 代码
  1. Frame.new(Window parent,  Integer id,  String title,    
  2.           Point pos = DEFAULT_POSITION,    
  3.           Size size = DEFAULT_SIZE,    
  4.           Integer style = DEFAULT_FRAME_STYLE,    
  5.           String name = "frame")  

 

  • 是否含有窗口,如果为nil,新窗口将出现在所有窗口之上
  • id 窗口的标识,-1为缺省值。
  • title 窗口标题.
  • pos 窗口的位置. 缺省值为(-1, -1)
  • size 窗口的大小. 缺省值为(-1, -1)
  • style 窗口的样式.
  • name 窗口名称.

    下面我要生成一个500*500大小窗口居中的form,只要改一下Frame.new 就ok了

    ruby 代码
    1. frame = Frame.new(nil, -1, "My first form",Point.new(-1,1),Size.new(500,500))   
    2. frame.centre(Integer direction = BOTH)  

    这样一个居中显示的窗口。就生成。。是不是很简单。

    更多属性可以参照

    http://wxruby.rubyforge.org/doc/frame.html

    12点,今天就写这么多。我再看看。明天继续

    • 描述: C:\ruby\lib\ruby\gems\1.8\gems\wxruby-1.9.1-i386-mswin32\samples\aui 这个例子的界面,没有功能只是界面觉得也够完成基本的界面任务了
    • 大小: 49.4 KB
    分享到:
    评论

    相关推荐

      wxruby and shadow

      1. **wxRuby介绍**:wxRuby是如何作为Ruby的GUI工具包工作的,它是如何将wxWidgets的C++接口转换为Ruby语言友好的API,以及如何通过Ruby代码创建窗口、按钮、菜单等控件。 2. **跨平台开发**:wxRuby如何支持在...

      Ruby GUI Toolkits

      Ruby GUI工具包是用于创建图形用户界面的库,它们允许开发者构建交互式的桌面应用程序。虽然Ruby没有一个原生的、类似Ruby的GUI系统,但默认提供了Tk工具包。Tk工具包虽然功能基本,文档不足,且外观一般被认为不...

      Ruby教程面向对象脚本语言

      Ruby支持多种UI框架,如GTK+、Qt、wxRuby等,允许开发者创建图形化的应用程序。这些框架提供了丰富的控件和事件处理机制,使得Ruby程序员可以构建出美观且功能齐全的应用程序。 在学习Ruby的过程中,理解其面向对象...

      Script.NET脚本语言开发平台2.1.1版本

      刚刚发布的2.1.1版本新增了Ruby脚本的支持,可以支持Ruby脚本的开发、调试、生成可执行文件、控制台等功能,可以支持wxRuby、RubyTk等界面库,目前还不支持Rails的调试,后续版本会不断完善。 下载地址和详细介绍请...

      Lua开发包 for Script.NET V2.1.1

      10、封装的TclFace页面扩展包,可以通过面向对象的tcl脚本生成各种平台的页面功能,此扩展包除了可以用于本地应用程序生成页面之外,还可以运行于AOLServer WEB服务器,作为一种类似于JSF的服务器端脚本。

      Tcl开发包 for Script.NET V2.1.1

      10、封装的TclFace页面扩展包,可以通过面向对象的tcl脚本生成各种平台的页面功能,此扩展包除了可以用于本地应用程序生成页面之外,还可以运行于AOLServer WEB服务器,作为一种类似于JSF的服务器端脚本。

      Ruby开发包 for Script.NET V2.1.1

      10、封装的TclFace页面扩展包,可以通过面向对象的tcl脚本生成各种平台的页面功能,此扩展包除了可以用于本地应用程序生成页面之外,还可以运行于AOLServer WEB服务器,作为一种类似于JSF的服务器端脚本。

      NSIS开发包 for Script.NET V2.1.1

      10、封装的TclFace页面扩展包,可以通过面向对象的tcl脚本生成各种平台的页面功能,此扩展包除了可以用于本地应用程序生成页面之外,还可以运行于AOLServer WEB服务器,作为一种类似于JSF的服务器端脚本。

      FXRuby-开源

      1. 首先,需要在Ruby环境中安装FXRuby gem,这通常通过运行`gem install fxruby-1.2.1.gem`命令完成。 2. 然后,导入FXRuby库,使用`require 'fox16'`(或根据FXRuby版本的不同,可能是`require 'fox'`)。 3. 创建...

      FarPy GUIE-开源

      这款工具目前兼容多种动态语言,包括wxPython、wxRuby、wxPerl以及IronPython。 wxPython是Python的一个扩展库,它允许开发者使用Python编写原生的跨平台GUI应用程序。wxWidgets库是wxPython的基础,是一个C++库,...

      map_creator:Reaktor样本图生成器

      这个工具的独特之处在于,它是一个不依赖wxruby库的命令行版本,这意味着用户无需图形界面即可进行操作,这对于系统资源有限或者喜欢纯文本交互的开发者和音乐制作人来说是一个理想的选择。 Ruby是一种强大的动态...

    Global site tag (gtag.js) - Google Analytics