【问题标题】:How could I redirect stdin (istream) in wxWidgets?如何在 wxWidgets 中重定向标准输入(istream)?
【发布时间】:2011-01-27 21:59:34
【问题描述】:

我正在尝试弄清楚如何将 istream 重定向到 wxwidgets。

我能够完成重定向 ostream,方法如下(所以你知道我的意思):

  wxTextCtrl* stdoutctrl = new wxTextCtrl(...);
  wxStreamToTextRedirector redirect(stdoutctrl); //Redirect ostream
  std::cout<<"stdout -- does this work?"<<std::endl; //It worked.

我现在一直在寻找,但我无法确定我会将 istream 重定向到某种 wx-input(因此“cin”实际上会提示用户通过 wxWidgets 进行输入)。

【问题讨论】:

    标签: c++ wxwidgets stdin iostream istream


    【解决方案1】:

    不,没有内置的方法可以做到这一点,因为与cout 相比,像这样重定向cin 的情况要少得多。而且还不清楚您希望它如何工作,即您可能不能像使用cout 那样将其映射到wxTextCtrl。更一般地说,读取是一种阻塞操作,与写入不同,因此完全不清楚如何构建您的 GUI 应用程序来执行此操作。

    简而言之,我认为您根本无法将使用 cin 的控制台程序移植到这样的 wxWidgets。

    【讨论】:

      猜你喜欢
      • 2022-11-10
      • 1970-01-01
      • 2012-05-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-09-21
      • 1970-01-01
      相关资源
      最近更新 更多