fxruby 显示图片,GUI,跨平台,但没有wxruby方便

清华大佬耗费三个月吐血整理的几百G的资源,免费分享!....>>>

#---
# Excerpted from "FXRuby: Create Lean and Mean GUIs with Ruby",
# published by The Pragmatic Bookshelf.
# Copyrights apply to this code. It may not be used to create training material, 
# courses, books, articles, and the like. Contact us if you are in doubt.
# We make no guarantees that this code is fit for any purpose. 
# Visit http://www.pragmaticprogrammer.com/titles/fxruby for more book information.
#---
require 'fox16'

include Fox

class ImagesWindow < FXMainWindow
  
  def initialize(app)
    super(app, "Mirror Image Example", :width => 600, :height => 500)
    frame = FXVerticalFrame.new(self, :opts => LAYOUT_FILL, :padTop => 20)
    @image = FXJPGImage.new(app,
      File.open("birdsnest.jpg", "rb").read,
      :opts => IMAGE_KEEP)
    @image_frame = FXImageFrame.new(frame, @image, :opts => FRAME_SUNKEN|FRAME_THICK|LAYOUT_CENTER_X)
    FXHorizontalSeparator.new(frame, :opts => LAYOUT_FILL_X|SEPARATOR_GROOVE)
    @horz_mirror = FXCheckButton.new(frame, "Mirror Horizontal", :padLeft => 12)
    @horz_mirror.connect(SEL_COMMAND) do |sender, sel, data|
      @image.mirror(true, false)
      @image_frame.update
    end
    @vert_mirror = FXCheckButton.new(frame, "Mirror Vertical", :padLeft => 12)
    @vert_mirror.connect(SEL_COMMAND) do |sender, sel, data|

      @image.mirror(false, true)

      @image_frame.update
    end
  end
  
  def create
    super
    show(PLACEMENT_SCREEN)
  end
  
end

if __FILE__ == $0
  FXApp.new do |app|
    ImagesWindow.new(app)
    app.create
    app.run
  end
end