微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用 gtk-rs

如何解决使用 gtk-rs

这是一个示例项目:

use gtk::prelude::*;
use gtk::{Application,applicationwindow};

fn main() {
    let app = Application::builder()
        .application_id("org.example.HelloWorld")
        .build();
    app.connect_activate(|app| {
        let win = applicationwindow::builder().application(app).build();

        example(&win);

        win.connect_add(move |_,_| {
            example(&win);
        });

        win.show_all();
    });

    app.run();
}

fn example(test: &applicationwindow) {
    test.connect_show_menubar_notify(move |_| {
        example(test);
    });
}

来自 cargo run错误

error[E0621]: explicit lifetime required in the type of `test`
  --> src/main.rs:22:10
   |
21 | fn example(test: &applicationwindow) {
   |                  ------------------ help: add explicit lifetime `'static` to the type of `test`: `&'static applicationwindow`
22 |     test.connect_show_menubar_notify(move |_| {
   |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^ lifetime `'static` required

我使用的依赖项是 gtk = "0.14.0",但我在使用 gtk-rs git 版本时也遇到了这个问题。

问题出在哪里?我是初学者;我必须做哪些改变?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。