window.New创建窗口时指定标志位参数
代码如下:
w, _ := window.New( sciter.SW_MAIN|sciter.SW_CONTROLS|sciter.SW_RESIZEABLE|sciter.SW_ENABLE_DEBUG, &sciter.Rect{0, 0, 500, 500})
这些是 Sciter SDK 中用于创建窗口的不同标志位(WindowCreationFlag),每个标志位控制窗口的不同特性和行为。以下是每个标志位的具体含义和作用:
SW_CHILD
:作用:指示窗口是子窗口,通常嵌入到其他窗口中。
详情:如果设置了这个标志,其他所有标志将被忽略,窗口将作为父窗口的子级存在。
SW_TITLEBAR
:作用:指示窗口具有标题栏。
详情:适用于顶级窗口,显示窗口的标题栏,但不包含其他系统控件。
SW_RESIZEABLE
:作用:指示窗口可调整大小。
详情:允许用户通过拖拽窗口边界来调整窗口的大小。
SW_TOOL
:作用:指示窗口是工具窗口。
详情:通常用于显示工具界面或辅助功能窗口,具体表现可以根据操作系统的窗口管理规则而有所不同。
SW_CONTROLS
:作用:指示窗口包含系统控件,如最小化和最大化按钮。
详情:在使用
SW_TITLEBAR
时,通常与之组合使用,表示窗口具有标准的系统控件。SW_GLASSY
:作用:指示窗口是玻璃窗口。
详情:在支持玻璃效果的操作系统上(如 Windows 中的 DwmExtendFrameIntoClientArea),窗口可以呈现半透明的玻璃效果。
SW_ALPHA
:作用:指示窗口是透明窗口。
详情:允许窗口内容透过窗口背景显示,通常使用 Windows 的 WS_EX_LAYERED 扩展风格实现。
SW_MAIN
:作用:指示窗口是应用程序的主窗口。
详情:通常用于标识应用程序的主要用户界面窗口,关闭这个窗口可能会终止整个应用程序。
SW_POPUP
:作用:指示窗口是弹出式窗口。
详情:创建一个位于顶部的弹出式窗口,通常没有标题栏和边框。
SW_ENABLE_DEBUG
:作用:启用调试模式。
详情:在调试模式下,Sciter SDK 提供了额外的调试功能,如 JavaScript 调试器和 DOM 查看器等工具。
SW_OWNS_VM
:作用:指示窗口拥有自己的脚本虚拟机(VM)。
详情:窗口可以独立运行其脚本,不与其他窗口共享同一个虚拟机实例。
这些标志位可以按位或(bitwise OR)组合使用,以实现多个功能或行为的组合。具体的实现和行为可能会因 Sciter SDK 的版本和具体平台而略有不同,建议查阅相关的 Sciter SDK 文档或 API 参考以获取更详细的信息和用法示例。
以下是 WindowCreationFlag 枚举中每个标志的详细说明: SW_CHILD (值:(1 << iota))表示子窗口。如果设置了此标志,则忽略所有其他标志。 SW_TITLEBAR表示顶级窗口,具有标题栏。 SW_RESIZEABLE 表示窗口可以调整大小。 SW_TOOL 表示工具窗口。工具窗口通常是一个浮动的、无边框的窗口。 SW_CONTROLS 表示窗口具有最小化和最大化按钮。 SW_GLASSY 表示玻璃窗口。在 Windows 上,这意味着使用 DwmExtendFrameIntoClientArea 创建玻璃效果。 SW_ALPHA 表示透明窗口。 例如,在 Windows 上使用 WS_EX_LAYERED 创建的窗口。 SW_MAIN 表示应用程序的主窗口。 关闭主窗口时,将终止应用程序。 SW_POPUP 表示窗口创建为最顶层窗口(popup window)。 SW_ENABLE_DEBUG 使窗口具备调试功能。 这意味着该窗口准备好进行检查和调试。 SW_OWNS_VM 表示窗口具有自己的脚本虚拟机(VM)。每个设置此标志的窗口将拥有独立的脚本执行环境。 这些标志用于在创建窗口时指定窗口的属性和行为,通过组合不同的标志,可以创建具有特定功能的窗口。