CPU писал(а): ↑11.07.2007 00:22
Zeus писал(а): ↑10.07.2007 14:48
Код: Выделить всё
gboolean
OscWindow::_scaleEvent_ (GtkAdjiustment* _adj)
{
::g_signal_emit_by_name (G_OBJECT(drawing_area), "expose_event");
return true;
}
Напиши так:
Код: Выделить всё
gboolean
OscWindow::_scaleEvent_ (GtkAdjiustment* _adj)
{
gboolean result;
::g_signal_emit_by_name (G_OBJECT(drawing_area), "expose_event", NULL, &result);
return result;
}
и будет работать.
Спасибо. Попробую.
Дать сигнал перерисоваться логичнее, чем рисовать "самому".
Я сегодня чуть не поседел, нафиг, пока с этим GtkScale разбирался:
в примере, который идёт с gtk у scale значение изменяется скачками (1-2-3-4-5), даже если тащить его мышью, а у меня скачками только с клавиатуры, а мышью - плавно. Я уж даже adjustment взял из примера (мало ли там чего не понимаю с этими лимитами, да page_size'ами). Всё-равно скачками не получается.
И только незамыленный взгляд коллеги увидел разницу: у меня scale'у было запрещено показывать значение (цифирки), а в примере - разрешено.
Убрал запрет - заработало.
Это нормальное поведение gtk или я опять что-то не так делаю?