使用GTK4开发Rust GUI应用时出现黑屏空白窗口问题求助
使用GTK4开发Rust GUI应用时出现黑屏空白窗口问题求助
大家好,我现在用Rust结合GTK4开发GUI应用,跑测试示例代码的时候遇到了奇怪的问题——窗口能正常打开,点击关闭按钮可以退出程序,点击按钮也能在控制台看到Clicked!的输出,但整个窗口是空白的,完全看不到按钮和任何界面内容,就好像控件根本没被渲染出来一样。
以下是我的代码、环境信息,麻烦帮忙看看哪里出问题了:
示例代码
use gtk4 as gtk; use gtk::prelude::*; use gtk::{glib, Application, ApplicationWindow, Button}; const APP_ID: &str = "org.gtk_rs.HelloWorld3"; fn main() -> glib::ExitCode { // 创建应用实例 let app = Application::builder().application_id(APP_ID).build(); // 绑定activate信号,触发UI构建 app.connect_activate(build_ui); // 运行应用 app.run() } fn build_ui(app: &Application) { // 创建带边距和标签的按钮 let button = Button::builder() .label("Press me!") .margin_top(12) .margin_bottom(12) .margin_start(12) .margin_end(12) .build(); // 绑定按钮点击信号 button.connect_clicked(|button| { // 点击后修改按钮标签 button.set_label("Hello World!"); println!("Clicked!"); }); // 创建应用窗口并挂载按钮 let window = ApplicationWindow::builder() .application(app) .title("My GTK App") .child(&button) .build(); // 显示窗口 window.present(); }
环境信息
- Rust版本:
rustc 1.88.0 (6b00bc388 2025-06-23) binary: rustc commit-hash: 6b00bc3880198600130e1cf62b8f8a93494488cc commit-date: 2025-06-23 host: x86_64-pc-windows-gnu release: 1.88.0 LLVM version: 20.1.5 - Cargo.toml依赖配置:
gtk4 = { version = "0.9.7", features = ["v4_18"] } - GTK构建版本:gvsbuild v2025.6.0
我试过重新构建依赖、重启项目,甚至换了个简单的仅显示窗口的测试代码,结果还是空白。明明逻辑上按钮已经被添加到窗口作为子控件了,为什么完全看不到呢?有没有人遇到过类似的问题,或者能帮我排查下原因?
内容来源于stack exchange
相关产品推荐
相关产品推荐

