0

C++ fltk:我有一个带有 in_box 和 out_box 的窗口,我如何制作它以便用户可以在 in_box 中键入回车键,然后继续进行其余的事件。现在,窗口刚刚出现并消失。

Window w(Point(100,100),200,200, "Category Sales");
In_box cat_in(Point(75,75),100,20,"Category:");
Out_box cat_out(Point(75,115),100,20,"Sales:");
w.attach(cat_in);
w.attach(enter);
category = cat_in.get_string();
4

2 回答 2

1

我不确定这是否能解决您的问题,但要保持窗口打开,请返回 Fl::run()。

于 2011-11-22T20:08:24.477 回答
1

我以前从未见过 In_box 和 Out_box,所以我假设它们是您自己的类或结构......如前所述 - 启动 FLTK 事件循环的最简单方法是使用 Fl::run() 或 (FLTK2) fltk ::跑()。

因此,您的代码应类似于 (FLTK2):

#include <fltk/Window.h>
#include <fltk/Widget.h>
#include <fltk/run.h>

using namespace fltk;

int main(int argc, char **argv) {

  // your code begins
  Window w(Point(100,100),200,200, "Category Sales");
  In_box cat_in(Point(75,75),100,20,"Category:");
  Out_box cat_out(Point(75,115),100,20,"Sales:");
  w.attach(cat_in);
  w.attach(enter);
  category = cat_in.get_string();
  // your code ends

  w->end();
  w->show(argc, argv);
  return run(); // this line is the most important, here we start the FLTK event-loop
}
于 2011-11-23T20:17:52.957 回答