0

C++ fltk: in_box と out_box を含むウィンドウがあります。ユーザーが in_box に入力して Enter キーを押すと、残りのイベントに進むことができるようにするにはどうすればよいですか。現在、ウィンドウは表示されて消えます。

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 に答える