我想为我使用Shoes维护的Ruby应用程序构建GUI,但我想做的一件事是能够使用D3 javascript库显示网络图。经过一些谷歌搜索,我认为这是不可能嵌入javascript在鞋的应用程序。有人知道是否有可能从鞋的应用程序打开一个浏览器窗口,或者更好的是嵌入一个浏览器窗口在我的鞋的应用程序?
当然,你没有提到鞋子的颜色,所以我将使用我最喜欢的绿色鞋子
require 'green_shoes'
Shoes.app do
gem 'watir'
chrome_proc = Proc.new {
require 'watir'
browser = Watir::Browser.new :chrome
browser.goto("http://www.google.com")
}
para link("Go to google", &chrome_proc)
end
嵌入浏览器窗口…我希望它可以,但我会感到惊讶…但是你可以一直使用watir (html)作为你的gui。
根据你的评论,这里有另一种方法,这是在windows上,但我相信你会知道如何将其转换到Mac上。
require 'green_shoes'
Shoes.app do
proc = Proc.new {
system('"C:UsersGebruikerAppDataLocalGoogleChromeApplicationchrome.exe" http://www.google.be')
}
para link("Go to google", &proc)
end
如果你在Mac上,只是想打开safari
你可以这样写:
require 'uri'
Shoes.app do
background "#EFC"
border("#BE8",
strokewidth: 6)
stack(margin: 12) do
para "Enter your name"
flow do
@value = edit_box
button "OK", width: 200, height: 200 do
system("open -a safari https://www.biblegateway.com/passage/?search=" + URI::encode(@value.text))
end
end
end
end