【问题标题】:C ncurses prevent resizeC ncurses 防止调整大小
【发布时间】:2014-02-03 14:08:45
【问题描述】:

我现在开始学习如何使用ncurses,我根据程序启动时的行数和列数做一些计算。

做动态计算来管理显示对我来说工作量太大,所以我需要找到一种方法来阻止在执行过程中调整外壳的大小,这可能吗?

【问题讨论】:

  • 如果您使用 PDCurses,您可以编译并链接到 SDL 版本。理论上,使用 SDL 应该让您能够为输出创建不可调整大小的窗口。这意味着您的应用程序基本上会提供自己的终端窗口,而不是 XTerm 或 Windows Cmd.exe。

标签: c resize ncurses


【解决方案1】:

当然没有可移植或通用的方法来阻止显示尺寸的变化。特定的终端仿真器可能会提供此功能,但我不知道有哪些。通常可以创建一个固定大小的窗口,但终端模拟器必须这样做;它对终端内运行的控制台代码是不可见的。

如果您发现难以响应动态显示尺寸变化,您可能需要重新构建代码。否则,您可以忽略大小更改,这可能会给您的用户带来混乱的体验,或者可能只是导致他们看到输出的一部分或大量空白,具体取决于调整大小的性质。 (要获得后一种效果,您需要避免依赖自动换行和滚动。另一方面,自动换行和滚动通常正是您使应用程序窗口大小独立所需要的。)

【讨论】:

    猜你喜欢
    • 2016-03-21
    • 2015-08-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多