处理newt回调

时间:2015-02-02 17:59:05

标签: c linux widget

我在newt中遇到回调问题。当我运行以下示例时,单击按钮时没有任何反应:

#include <newt.h>
#include <stdlib.h>

void b1Callback(newComponent co, void * data)
{
    //invoke another form
}

void main(void)
{
    newtComponent form, b1, b2;
    newtInit();
    newtCls();

    newtOpenWindow(10, 5, 40, 6, "Button Sample");

    b1 = newtButton(10, 1, "Ok");
    b2 = newtCompactButton(22, 2, "Cancel");
    newtComponentAddCallback(b1, b1Callback, NULL);
    form = newtForm(NULL, NULL, 0);
    newtFormAddComponents(form, b1, b2, NULL);

    newtRunForm(form);

    newtFormDestroy(form);
    newtFinished();
}

我想要做的是当我点击按钮时出现另一个表格。有任何提示怎么做?

1 个答案:

答案 0 :(得分:0)

这就是我所做的检查按钮是否被按下的情况,我不知道是否会帮助你,但我没有开始回调

  • 将变量设置为newtComponent answer
  • 调用此函数answer = newtFormGetCurrent(form);
  • 并检查答案是否是我的b1按钮if( answer == b1 )