1

例如,我有 5 个选择组件

Fl_Choice* mySideChoice;
mySideChoice = new Fl_Choice(aX, aY, aWidth, aHeight, "Side");

这是一个多步骤过程的一部分。在流程结束时,我想重置所有组件,以便用户可以再次执行此操作。我有困难。创建widgit时,文本为空白,用户需要为其选择一些东西来调用回调。很明显,用户需要在其中单击并选择一个值。

我希望用这段代码“重置它”:

mySideChoice->hide();
mySideChoice->value(0);

不起作用,当我再次显示widgit时只选择第一个值。

我尝试了这个凌乱的代码只是想到达某个地方:

Fl::delete_widget(mySideChoice);
Fl::do_widget_deletion();
Fl::check();
Fl::flush();
Sleep(1000); 
mySideChoice = new Fl_Choice(aX, aY, aWidth, aHeight, "Side");
Fl::check();
Fl::flush();

即使完全重新创建widgit也不起作用。该widgit根本不会重新出现在窗口上......

帮助!有任何想法吗?

谢谢!!

4

1 回答 1

0

哈!如此愚蠢

mySideChoice->value(-1);
于 2012-11-26T16:50:13.083 回答