Hi,How are you doing?
我是职场编码(CodeVoc)。
在E000中,我们介绍了Node.js、Ruby、Electron等工具下载安装。
这期,给你演示一下由Electron联合Ruby制作的小工具。
播放
暂停
进入全屏
退出全屏
00:00
00:00
重播
请
刷新
试试借助Electron官方Demo,我们很容易制作一个工具展示平台。
点击“View Demo”会弹出我们的工具界面。
一、项目需求
这个工具的主要目的是为了把文字内容写入Excel表格、Word文档、Ppt演示文稿。
它可以选择待写入文件类型,选择文件类型后,在文本框输入文字信息。
点击“写入”按钮,依次打开Excel、Word、Ppt文件,显示我们写入的文字内容。
二、界面设计
【html】
生成表单容器:
生成布局标签:
生成下拉选择按钮:
生成文本框:
生成普通按钮:
【css】
关注四点前白后绿气泡某词平台,搜索“职场编码”查看源码。
【javascript】
execute按钮添加单击事件
<code>
execute
.addEventListener("click"
,function
()
1
,获取参数2
,调用}) /<code>获取参数1
<code>
var
select_name=document.getElementById('select_name'
).value
/<code>获取参数2
<code>
var
input_word=document.getElementById('input_word'
).value
/<code>调用Ruby脚本
<code>
const
{ spawn } =require
('child_process'
)const
ls = spawn('ruby'
, ['Ruby脚本完整路径'
,参数1
,参数2
]) /<code>三、逻辑梳理
=> 基础语法
引用Ruby标准库
<code>
require
"win32ole"
/<code>创建主入口方法、分入口方法
<code>
def
Main
(name,txt)
def
New_excel
(txt)
def
New_word
(txt)
def
New_ppt
(txt)
/<code>接收控制台传双参
<code>
Main
ARGV
[0]
,ARGV
[1]
)/<code>对参数ARGV[0] => name进行判断,根据判断结果执行分入口方法
<code>
case
namewhen
"excel"
then
New_excel(txt)when
"word"
then
New_word(txt)when
"ppt"
then
New_ppt(txt) /<code>=> 对象模型
创建可视化Excel、Word、Ppt应用
<code>
eap
=WIN32OLE::new("excel.application"
)wap
=WIN32OLE::new("word.application"
)pap
=WIN32OLE::new("powerpoint.application"
)/<code>新建Excel空白工作簿、Word文档、Ppt演示文稿\幻灯片
<code>
ebk
=eap.workbooks.addwdc
=wap.documents.addpst
=pap.presentations.add/<code>执行写入Excel单元格、Word段落、Ppt文本框操作
<code>ebk.worksheets(
1
).cells(1
,1
).value
=txt wdc.paragraphs(1
).range.text=txt psd.shapes(1
).textframe.textrange.text=txt/<code>欢迎关注四点前白后绿气泡某茉平台,关注“职场编码”查看源码。