- 论坛徽章:
- 0
|
2个按钮,当上下键切换到第一个按钮的时候,按钮的背景由4个图连续切换,离开这个按钮的时候停止切换换回原来的灰色。默认选中这个按钮,有图在切换
我目前可以达到开始就有图切换,但是按钮上下切换就会出现问题,请看看应该如何处理
static int i = 0;
static int j = 0;
static gboolean time_handler1(GtkWidget *widget)
{
if( j == -1)
return FALSE;
gtk_image_set_from_file ((GtkImage *)image, bmp);
gtk_widget_queue_draw(widget);
i++;
if(i > 3)
i = 0;
return TRUE;
}
gint key_press_event(GtkWidget *widget, GdkEvent *event, gpointer data)
{
j = -1;
gtk_image_set_from_file ((GtkImage *)image, "1.png");
return FALSE;
}
gint key_release_event(GtkWidget *widget, GdkEvent *event, gpointer data)
{
j = 0;
i = 0;
return FALSE;
}
int main(int argc, char **argv)
{
...
g_signal_connect(G_OBJECT(button),"key_press_event", G_CALLBACK(key_press_event), NULL);
g_signal_connect(G_OBJECT(button),"key_release_event", G_CALLBACK(key_release_event), NULL);
g_timeout_add(1000, (GSourceFunc) time_handler1, (gpointer)button);
time_handler1(button);
...
} |
|