当前位置: 首页 > 工具软件 > wxRuby > 使用案例 >

wxruby 应用(1)

卓致远
2023-12-01

因为最近工作都在用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点,今天就写这么多。我再看看。明天继续

 类似资料: