类:UI::HtmlDialog
- 继承:
-
对象
- 对象
- UI::HtmlDialog
概述
Ruby的HtmlDialog类允许您从Ruby创建HTML对话框并与之交互。这是在SketchUp中生成复杂的嵌入式UI的最佳方法,但它通常需要HTML和JavaScript专业知识。
如果您的目标是简单地向用户显示网站,请考虑使用#openURL,这将在默认浏览器中显示网页,而不是在SketchUp中的对话框中显示。
对话框的左、上、宽、高等尺寸以逻辑单位表示。这意味着你提供的单位就好像他们在显示器上的“正常”DPI。给定的单位将乘以scale_factor.
常量总结#
- UI::HtmlDialog::STYLE_WINDOW
- UI::HtmlDialog::STYLE_DIALOG
- UI::HtmlDialog::STYLE_UTILITY
实例方法摘要# collapse
-
#add_action_callback(callback_name) {|action_context, ...| ... } ⇒ Boolean
这个#add_action_callback方法建立一个Ruby回调方法,html对话框可以调用该方法来执行某些功能。
-
#bring_to_front ⇒ nil
这个#bring_to_front方法将窗口置于最前面,将其放在其他窗口的顶部,即使将其最小化。
-
#center ⇒ true
这个#center方法用于使HtmlDialog相对于活动模型窗口居中。
-
#close ⇒ nil
这个#close方法用于关闭对话框。
-
#execute_script(script) ⇒ nil
这个#execute_script方法用于在html对话框上异步执行JavaScript字符串。
-
#initialize(properties) ⇒ HtmlDialog
构造函数
新方法用于创建新的HtmlDialog。
-
#set_can_close ⇒ Boolean
这个#set_can_close方法用于附加在关闭前执行的块,此块必须返回布尔值,如果块返回false,则关闭将被取消。
-
#set_file(filename) ⇒ nil
这个#set_file方法用于标识要在HtmlDialog中显示的本地HTML文件。
-
#set_html(html_string) ⇒ nil
这个#set_htmlHtmlDialog用于加载字符串形式HTML的HtmlDialog。
-
#set_on_closed ⇒ Boolean
这个#set_on_closed方法用于附加将在对话框已处于关闭过程中时执行的块,请在该块中执行任何最后一分钟的操作,例如保存当前状态。
-
#set_position(left, top) ⇒ true
这个#set_position方法用于设置HtmlDialog相对于屏幕的位置(以像素为单位)。
-
#set_size(width, height) ⇒ true
这个#set_size方法用于设置HtmlDialog的大小(以像素为单位)。
-
#set_url(url) ⇒ nil
这个#set_url方法用于加载包含特定URL处内容的HtmlDialog。
-
#show ⇒ nil
这个#show方法用于显示非模态对话框。
-
#show_modal ⇒ nil
这个#show_modal方法用于显示模式对话框。
-
#visible? ⇒ Boolean
这个#visible?方法可用于判断对话框是否显示且仍处于活动状态,如果对话框最小化或在屏幕上不可见,则仍将返回
true
.
构造函数详细信息
↑ #initialize(properties) ⇒ HtmlDialog
在SketchUp 2019之前:width
和:height
如果:preference_key
也存在。要在旧版本上解决此错误,请使用#set_size初始化对话框后。
新方法用于创建新的HtmlDialog。
这个properties
哈希接受可选密钥style
其中1的值为:
UI::HtmlDialog::STYLE_DIALOG
-
HtmlDialog位于SketchUp的顶部。
UI::HtmlDialog::STYLE_WINDOW
-
HtmlDialog可以在SketchUp后面,当SketchUp失去焦点时,它不会消失。
UI::HtmlDialog::STYLE_UTILITY
-
HtmlDialog以小标题栏显示,并保持在SketchUp的顶部。
实例方法详细信息
↑ #add_action_callback(callback_name) {|action_context, ...| ... } ⇒ Boolean
当HtmlDialog关闭时,对该实例的所有回调都将被清除。如果需要再次打开对话框,请重新附加它们。
这个#add_action_callback方法建立一个Ruby回调方法,html对话框可以调用该方法来执行某些功能。
使用sketchup.callback_method_name
从html对话框调用回调方法。html对话框中的JavaScript将使用相同数量的参数调用回调。
调用是异步的。JavaScript调用可能在Ruby回调调用之前返回。使用onCompleted
回调以获得完成通知。
基本类型,如布尔值、数字、字符串、数组和散列在Ruby和JavaScript之间自动转换。
↑ #bring_to_front ⇒ nil
这个#bring_to_front方法将窗口置于最前面,将其放在其他窗口的顶部,即使将其最小化。
↑ #execute_script(script) ⇒ nil
这个#execute_script方法用于在html对话框上异步执行JavaScript字符串。
↑ #set_can_close ⇒ Boolean
这个#set_can_close方法用于附加在关闭前执行的块,此块必须返回布尔值,如果块返回false,则关闭将被取消。
↑ #set_on_closed ⇒ Boolean
这个#set_on_closed方法用于附加将在对话框已处于关闭过程中时执行的块,请在该块中执行任何最后一分钟的操作,例如保存当前状态。
↑ #set_position(left, top) ⇒ true
这个#set_position方法用于设置HtmlDialog相对于屏幕的位置(以像素为单位)。
↑ #show_modal ⇒ nil
这个#show_modal方法用于显示模式对话框。