阅读更多

5顶
0踩

编程语言

原创新闻 Cheri: 用JRuby创建Swing Builder应用的框架

2008-07-07 15:23 by 副主编 QQbyte 评论(3) 有4869人浏览
Cheri提供了用JRuby创建Swing Builder应用的框架,采用特定域语言(DSL),使得只需要非常简单的代码就创建优秀的Swing应用。



推荐下载超酷视频:(46.3 MB)总共: 17分钟15秒
http://media.screencastic.com/public/video_assets/1/01-cheri.mov

Cheri主页:http://cheri.rubyforge.org/

下面是简单的例子:

Cheri::Swing hello world

require 'rubygems'
require 'cheri/swing'
include Cheri::Swing

f = swing.frame('Hello World') { label 'Hello!' }
f.pack
f.visible = true





Cheri::Swing and Cheri::Html

require 'cheri/swing'
require 'cheri/html'
include Cheri::Swing
include Cheri::Html

folks = {
  "Susan" =>"Wife", "Larry" =>"Son",
  "Bob" => "Friend","MaryAnne" => "Friend",
}
@frame = swing.frame('Swing and Html') { |frm|
  size 240,180; box_layout frm,:Y_AXIS
  content_pane { background :WHITE }
  default_close_operation :EXIT_ON_CLOSE
  menu_bar { 
    menu('File') {  mnemonic :VK_F
      menu_item('Exit') { mnemonic :VK_X
        on_click { @frame.dispose }
  }}}
  scroll_pane {
    align :LEFT
    editor_pane {
      content_type 'text/html'
      editable false
      background color(255,255,240)
      html {head {
         style "body { font-family: sans-serif; }" }
        body {div(:align=>:center) {
        table(:width=>'90%',:border=>1) {
          tr th('Name'), th('Relationship'),
            :bgcolor=>:yellow
          folks.each do |name,rel|
            tr(:bgcolor=>'#e0ffff') {
              td {name}; td {rel} }
          end      
   }}}}}}
}
@frame.visible = true






5
0
评论 共 3 条 请登录后发表评论
3 楼 rubynroll 2008-07-08 16:17
引用
我想知道这么做有意义吗

ruby优雅灵活的语法对于GUI开发有非凡的意义,然而创建符合Ruby Way的GUI binding并非容易。我用过RubyGenome2,感觉非常好,不知道这个RubySwing作得如何...
2 楼 zsbfree 2008-07-08 11:33
我想知道这么做有意义吗
1 楼 xiuxiuxiu 2008-07-07 22:48
编译出来是一样的class么?
不知道具体的应用环境是什么?

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • 组件方式开发webApp源码

    通过组件方式开发webApp 整个项目的源码

  • 基于http请求web打印组件,实现浏览器、移动端、服务端无预览打印

    web、移动端实现无预览打印

  • web直接打印服务,解决前端打印烦恼

    WebPrintServer是提供给前端开发者使用的打印服务插件,简单易用、功能强大、高效稳定、输出一致的打印控件/插件/服务,它带给开发者和最终用户的体验堪称完美。可以直接通过服务提供的api进行打印、打印预览、获取打印机列表、导出,等功能。

  • 实现C#中的PrintDocument多页打印功能

    本文还有配套的精品资源,点击获取 简介:在C#中, PrintDocument 组件是实现打印功能的关键,包括创建自定义打印输出和多页打印。本项目通过重写 OnPrintPage 事件处理程序来绘制多页内容,并涉及打印设置、页面设置、打印预览等高级特性。开发者可以使用VS2005等IDE环境进行设计和测试,学习如何有效地使用 PrintD...

  • 自己开发基于Web的打印控件,真正免费不是共享

     1.1.0.121 版的控件,更新如下   SetPrintBackground 已被取消         SetMediaHeader        去掉了两个参数,见被划掉的文字部分       在做项目中发现要用到Web方面的打印,于是从网上搜索了一些相关的web打印控件,有scriptx,jatoolsPrinter等,不过都不是免费的,想想还是自己做的好,毕竟这不是

  • 开发自己系统打印模块(一)

    /////开发自己的万能打印模块 很多时候,开发WEB的时候,都有可能最后要开发一个打印模块。其实打印对于WEB前端来说比开发C/s模式的打印模块简单的多。但是有时候IE浏览器提供的打印的模块却不尽人意,所以我这想开适合自己WEB的打印模块。 好了进入正题 --------------------------------------------------------------------...

  • WEB免费打印控件推荐(转载)

    在WEB系统中,打印的确是个烦人的问题。 要么自己开发打印控件,如果项目时间紧,肯定来不及。 要么购买成熟的打印控件,如果是大项目可以考虑,但如果项目只有几K到1、2W之间,这就麻烦了。 前段时间有机会接触了一下WEB打印。在博客园、CSDN上找了老半天,终于,功夫不付有心人,终于找到了。 现在就推荐给大家分享。 1、 DLPrinter DLPrinter打印控件完全免费,界面...

  • java 打印框架_WEB 打印-Java架构师必看

    文/谢康  做Web开发的人员一定都会面临一个共同的难题,那就是打印。的确,相对于Windows桌JavaScript文/谢康做Web开发的人员一定都会面临一个共同的难题,那就是打印。的确,相对于Windows桌面应用程序来讲,Web应用程序的打印有种种限制,技术人员在项目开发过程中经常会遇到用户这样或那样的需求. 做过桌面应用开发的人都会非常熟悉水晶报表、Active Report之类的报表控件...

  • 本人用VC开发的基于浏览器的票据打印控件

     从最初的OLE1.0到ActiveX,从COM到DCOM,微软在逐步完善组件对象模型,Internet和分布式的引入更使ActiveX技术日臻完善。ActiveX支持3种类型的服务器实现组件:进程内服务器,它以动态链接库(dynamic linked library,DLL)的形式存在,与应用程序在相同的进程空间内运行,所以性能开销很小;本地服务器,它与客户端运行在不同的进程空间,所以通常性

  • 一个非常好的web打印控件

    http://mt.runon.cn/index.html

  • 网页WEB打印控件制作 开放源码可以调试

    在WEB系统中,打印的确是比较烦人的问题,如果我们能制作一个属于自己的自定义的打印插件,那么我们在后续自定义打印的时候能随心所欲的控制打印,这样的效果对于程序员来说是非常开心的一件事件,本文将自己开发编写的C# 制作的HTML打印插件分享出来,让有同样需求的朋友提供一个参考;此插件是基于Microsoft .NET Framework 2.0 开发的,缺点是每台客户端在安装插件时,必须要安装Mic

  • 自定义调试打印组件的实现思路和代码实现

    文章目录1 printf存在的问题1.1 打印错乱1.2 printf函数的不可重入1.3 printf重映射串口打印耗时2 自定义调试打印组件的实现思路3 代码实现 1 printf存在的问题 1.1 打印错乱 由于任务被切换执行,导致了打印错乱的发生。 1.2 printf函数的不可重入 printf()不能同时被多个任务调用,属于不可重入函数。 解决方式:调用printf之前进行上锁,使用完之后再开锁。 1.3 printf重映射串口打印耗时 原因: 在以115200波特率进行计算,打印200byt

  • Web页面 Print

    1、控制"纵打"、横打”和“页面的边距。 (1)<scriptdefer> functionSetPrintSettings(){  //--advancedfeatures  factory.printing.SetMarginMeasure(2)//measuremarginsininches  factory...

  • Windows打印管理解决方案

    需求 从需求出发,我们的目的是在电脑上提供一个虚拟打印机,然后让用户选择这个虚拟机打印时产生的中间文件被拦截下来,之后进行进一步处理后在执行真实的打印。 Windows打印体系 首先附上查找Windows打印相关内容的链接,这个分类下包含了Windows打印的方方面面 https://msdn.microsoft.com/en-us/library/window...

  • vue项目中使用cn打印组件

    最近项目中要对接订单信息,打印快递面单。这里记录下开发流程。 前端方面流程还是很简单的。 1.电脑安装 连接好打印机 并安装对应打印机驱动 2.电脑安装 菜鸟打印组件 下载地址:http://cloudprint.cainiao.com/cloudprint/client/CNPrintSetup.exe?spm=a219a.7629140.0.0.YJQX7O&file=CNPrintSetup.exe 3.在开始打印前 要注意你的快递面单尺寸,在打印组件中需要设置对...

  • WEB组件化思想

    JS不同层的职责和API 浏览器低层分层大概也可以分为DOM / BOM / STYLE 样式 /Canvas 2D / WebGL / SVG 浏览器底层面临的一些问题 JS核心语法层面薄弱 JS原生API不好用 (ajax , cookie ,) 浏览器兼容问题 (IE9微软用了自己一套的东西,搞事情?) 对过时浏览器的兼容性问题是沉重的知识包袱, 关键是这种知识没有延续性,会影响你学

Global site tag (gtag.js) - Google Analytics