使用GtkBuilder自动连接信号,但使用GTKmm [英] Auto-connection signals with GtkBuilder but on GTKmm

查看:201
本文介绍了使用GtkBuilder自动连接信号,但使用GTKmm的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

C 中,我可以使用此代码自动获取信号:

  gtk_builder_connect_signals(builder,NULL )

如何在 C ++ 中使用 GTKmm 当您使用 gtkmm 时,您无法使用 Glade 来连接您的信号。 gtkmm

  Glib :: RefPtr builder = Gtk :: Builder :: create_from_file( glade_file.ui); 

Gtk :: Window * window1 = 0;
builder-> get_widget(window1,window1);

Gtk :: Button * button1 = 0;
builder-> get_widget(button1,button1);
//获取其他小部件
...

button1-> signal_clicked()。connect sigc :: mem_fun(* this,& button1_clicked));

查看这些答案:



https://stackoverflow.com/a/3191472/1673000



https://stackoverflow.com/a/1637058/1673000


In C, I can autoconnec signals with this code:

gtk_builder_connect_signals (builder, NULL)

How to do this in C++ with GTKmm?

解决方案

You cannot use Glade to connect your signals when using gtkmm, you need to do that manually.

    Glib::RefPtr builder = Gtk::Builder::create_from_file("glade_file.ui");

    Gtk::Window *window1 = 0;
    builder->get_widget("window1", window1);

    Gtk::Button *button1 = 0;
    builder->get_widget("button1, button1);
    // get other widgets
    ...

    button1->signal_clicked().connect(sigc::mem_fun(*this, &button1_clicked));

Have a look at these answers :

https://stackoverflow.com/a/3191472/1673000

https://stackoverflow.com/a/1637058/1673000

这篇关于使用GtkBuilder自动连接信号,但使用GTKmm的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆