更改旋转按钮的值

时间:2016-01-21 04:33:16

标签: c widget gtk glade gtk2

我正在使用Glade3和我自己的主C文件从头开始创建gtk2应用程序。

情景是这样的。 有3个旋转按钮的集合。当旋转按钮1或2中的值发生变化时,我需要实时更改第3个旋转按钮的值。

使用Glade3我已经制作了3个旋转按钮,我知道如何使用以下处理程序更改值。

void value_calc(GtkSpinButton *o, gpointer d)
{
    gdouble x = gtk_spin_button_get_value (o);
    printf("spin-button1-vlaue: %f\n", x);
}

我将第一个旋转按钮的“更改值”信号与上面的value_calc处理程序连接起来。它已成功打印更改的值。 我对第二个旋转按钮做了同样的事情。 我有两个值,现在我需要更新第3个旋转按钮的值。

void set_values (gdouble value_to_be_added)
{
    GtkSpinButton *spinbuton_3;
    gtk_spin_button_set_value (spinbuton_3, value_to_be_added);
}

编译时没有错误和警告。但是当运行程序并更改旋转按钮的值时,会向命令行抛出一些错误。

Gtk-CRITICAL **: IA__gtk_spin_button_set_value: assertion 'GTK_IS_SPIN_BUTTON (spin_button)' failed

此外,它不会执行所需的操作。

0 个答案:

没有答案