25个版本 (稳定)
1.7.2 | 2024年8月14日 |
---|---|
1.7.1 | 2024年7月25日 |
1.6.0 | 2024年5月13日 |
1.5.1 | 2024年3月20日 |
0.3.2 | 2022年11月28日 |
#532 in GUI
每月下载量36,260
用于 15 个包 (3个直接使用)
2MB
31K SLoC
注意:此库是 Slint 项目 的 内部 包。不应直接使用此包,而是应使用 slint
包。
警告:此包不遵循semver版本约定,并且只能与Cargo.toml中的 version = ""=x.y.z""
一起使用。
Slint的Winit后端
此包实现了Slint的winit后端/平台。它作为 slint
包的默认功能默认启用。
尽管此包主要是内部包,但它也可以由应用程序使用,以利用 winit::window::Window
的全部功能为Slint窗口。
要使用此功能,在导入依赖项时需要谨慎,因为此包不遵循semver,可能会在任何补丁版本中引入破坏性更改。此外,此包的版本必须与Slint的版本相匹配。要表示您希望特别使用此版本,请在版本字符串中包含 =
符号。
确保winit的版本与此包使用的版本匹配。检查此包的依赖关系以确定所需版本。
[dependencies]
slint = { version = "x.y.z", ... }
i-slint-backend-winit = "=x.y.z"
winit = "0.w"
为确保选择运行时后端,在 main
函数的第一步中初始化后端。
fn main() {
slint::platform::set_platform(Box::new(i_slint_backend_winit::Backend::new().unwrap()));
// ...
}
一旦你拥有一个 slint::Window
(可以通过生成的组件的 window() 函数访问),你可以使用 WinitWindowAccessor::with_winit_window
函数来访问 winit::window::Window
对象。
# // similar to code generated by the slint! macro
# struct C; impl C { fn window(&self) ->i_slint_core::api::Window {todo!()} }
# let my_ui = C;
use i_slint_backend_winit::WinitWindowAccessor; // import the trait
my_ui.window().with_winit_window(|winit_window: &winit::window::Window| {
// Here, you can use the winit API
});
依赖项
~7–48MB
~794K SLoC