如何在Rust / gtk-rs中创建一个简单的Gtk MessageDialog?

时间:2018-11-08 00:53:17

标签: rust gtk3 gtk-rs

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

有人可以帮我吗?

我曾经在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中做到这一点呢?我完全迷路了。

1 个答案:

答案 0 :(得分:1)

There is an example展示一个消息框:

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();
}