2

我正在尝试 gtk-rs,虽然肯定有可用的文档,但对于初学者来说太难理解了。我只看到了许多不同的 impls、traits 和泛型,但从来没有任何代码示例可供我学习。通常我会查看代码,使用它,然后逐行浏览它,以便我能够理解它。但这在这里是不可能的。

有人能帮帮我吗?

我曾经在 PyGTK 中编程,发现了一个旧的示例代码:

def report_error(self, reason):
    dialog = Gtk.MessageDialog(Gtk.Window(), 0, Gtk.MessageType.INFO, Gtk.ButtonsType.OK, "You did something wrong")
    dialog.format_secondary_text(reason)
    dialog.run()
    dialog.destroy()

但是,我怎样才能在 Rust/gtk-rs 中做到这一点?我完全迷路了。

4

1 回答 1

2

有一个演示消息框的示例:

extern crate gtk;
use gtk::prelude::*;
use gtk::{ButtonsType, DialogFlags, MessageType, MessageDialog, Window};

fn main() {
    if gtk::init().is_err() {
        println!("Failed to initialize GTK.");
        return;
    }
    MessageDialog::new(None::<&Window>,
                       DialogFlags::empty(),
                       MessageType::Info,
                       ButtonsType::Ok,
                       "Hello World").run();
}
于 2018-11-08T08:44:40.767 回答