FLTK 1.3.4中的树说:
根据时间()的值调用回调()
但是,如果鼠标被释放,我就无法调用回调,而且我看不出两者之间有什么区别。有什么想法吗?
#include <FL/Fl.H>
#include <FL/Fl_Double_Window.H>
#include <FL/Fl_Tree.H>
static void cb_(Fl_Tree*, void*)
{
printf ("callback\n");
}
int main()
{
Fl_Double_Window* w = new Fl_Double_Window(325, 325);
Fl_Tree* o = new Fl_Tree(25, 25, 255, 245);
o->callback((Fl_Callback*)cb_);
o->when(FL_WHEN_RELEASE);
o->add("foo/bar");
o->add("foo/baz");
o->end();
w->show();
return Fl::run();
}即使设置了FL_WHEN_RELEASE,此片段也会对每个更改输出“回调”。
发布于 2017-09-16 03:18:35
如果您下载了发行版,请查看test/input.cxx和test/tree.cxx。两者都有不同选择时的测试。
WHEN_CHANGED只对编辑框、浏览器和表有意义--您可以在输入数据时验证它。这种情况在WHEN_RELEASE中不会发生。对于所有其他小部件,几乎没有区别。
编辑
为了每次释放,有三个选项之一
https://stackoverflow.com/questions/46241677
复制相似问题