问题标签 [tui]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
7035 浏览

java - 如何在不支持 GUI 的无头 Linux 上运行 Java GUI 应用程序?

我创建了一个在 Windows 中运行的 Java GUI 应用程序。现在我希望它在不支持 GUI 的无头 Linux 实例上运行。我想将 GUI 转换为 TUI。有没有办法可以替换一些类并通过 TUI 在 Linux 中运行。请帮忙。

0 投票
0 回答
5722 浏览

java - 用于文本用户界面 (TUI) 的 Java 框架

我需要为我的应用程序创建 TUI。有什么框架可以帮助我吗?我需要类似Ncurses的东西,但对于 Java。我找到了一些(JcursesCharva)。有谁有他们的经验?请告诉我,哪个更好(在我的情况下更好意味着更容易)。或者也许是别的什么?

0 投票
1 回答
3938 浏览

linux - 如何使用 TUI 制作 Linux 程序

我想制作一个带有基于文本的用户界面的 Linux 程序。解决此问题的最佳方法是什么?在搜索互联网后,我发现了 curses 和 ncurses 库。两者之间有什么区别,如果有的话,哪个更好(或者有更好的选择)?我更喜欢 C 但愿意使用其他语言。

谢谢

0 投票
1 回答
132 浏览

powershell - 将脚本位置保留在终端中

我想编写一个显示几行(可能是 5 行)的 Powershell 脚本,但它们在终端窗口中保持在相同的位置/位置。例如:如果我正在编写一个脚本,如果有几个设备可以 ping,则打印,我不希望输出继续向下滚动终端;我希望每条线都保持在它们所在的位置,但会随着时间的推移而更新。

前任:

脚本继续运行,行保持在同一位置,并且输出会在必要时更新。我如何在 Powershell 中实现这一点?

我刚刚发现这个论坛帖子更清楚地概述了我的问题:http: //www.minasi.com/forum/topic.asp? TOPIC_ID=29171

现在还是这样吗?还是不行吗?

0 投票
2 回答
106 浏览

ruby - 有没有办法在终端中维护两个窗口?

我正在构建一个小脚本,我需要在终端(TTY)中维护两个窗口。我想做一些类似 tmux 的状态栏的事情,但是在我在屏幕的其余部分打印东西的同时,我无法让底部栏更新。我希望它看起来像:

我已经尝试过使用 Ruby curses lib,但我认为这对于我想要做的事情来说太过分了,而且我确信有一种更简单的方法。谢谢!

0 投票
1 回答
2032 浏览

c - C TUI 开发 - 帮助/教程?

我一直在查看有关此主题的先前问题,但到目前为止,他们都没有回答我的问题。我正在寻找一种方法(没有库)从头开始构建我自己的 TUI。我想从一个简单的程序开始,它读取一个目录并显示内容,并能够使用箭头键上下移动突出显示一个项目。这看起来很简单,这将是我开始项目其余部分所需的全部帮助。

我所需要的只是有人指出我清除和打印到屏幕的正确方向,而不是使用打印语句或外部库。任何帮助将不胜感激。

0 投票
1 回答
3483 浏览

gdb - 在 Mingw 中构建 GDB 错误,配置:错误:未找到增强的 curses 库;禁用 TUI

我尝试在 mingw 中构建 GDB 7.51 以进行跨平台调试,我发现 GDB 有 TUI 作为前端。无论如何,我用 --enable-tui 配置 GDB,然后总是停止并显示错误消息:

配置:错误:未找到增强的诅咒库;禁用 TUI

我通过谷歌检查了这个问题,然后我从 GNU 下载了 ncurses 源

诅咒 5.9

在我的 c:/mingw/msys/1.0/local/ 中构建并安装它

使用以下脚本语句运行 GDB 的配置

但它没有用。通过以下消息停止

我搜索了waddstr,并确定它存在于我的c:/mingw/msys/1.0/local/lib/libncursest.a中。

0 投票
2 回答
745 浏览

c++ - 在 C++ 中管理控制台光标操作的简单且可移植的方法

在处理控制台输入 (stdin,std::cin) 时,C++ 中有一种可移植的方式来管理用户可能执行的各种操作,例如:

  1. 退格/删除
  2. 项目清单
  3. 左/右箭头键(移动光标前后插入文本)

例如在 windows 中使用 std::cin 时(例如:std::cin >> s;),它允许使用箭头键,但是在 linux 上使用相同的代码时,箭头键被假定为输入的一部分,光标不会四处移动。

我知道提供此类功能的各种 TUI 框架,例如 curses 和 ncurses,但它们超出了要求。

我希望有一个基于标准库的简单解决方案,甚至是一个轻量级的开源库,它可能具有类似 std::getline 的功能,可以在更流行的操作系统中移植。

0 投票
1 回答
13891 浏览

linux - 如何使gdb tui窗口更大

我正在使用gdbintui模式调试我的应用程序。

当我开始调试会话时,主窗口被分成 2 个大小相等的部分。

  • 带有源代码的窗口(上侧)
  • 我可以调用 gdb 命令的窗口(下侧)

2 个窗口的大小完全相同。

有什么方法或组合键可以使源代码窗口比其他窗口更大吗?有什么可以让它变大的吗?

0 投票
0 回答
114 浏览

java - Java输出中的独立滚动列

是否可以在 Java 中有两个(或更多)独立滚动列?我要求这样的功能:

前:

后:

另一行添加到第 2 列,它向上滚动,但第 1 列不受影响。

我知道这样的功能可以使用 Swing 或类似 ncurses 的界面来实现,但我无法使用任何一个。

编辑:为了澄清,我希望能够以这种方式格式化标准输出(或在必要时重定向它)。我正在编写的应用程序使用交互式命令行界面,这就是为什么摇摆和诅咒是不可接受的。更具体地说,我需要 CLI 的类似 Editline/Readline 的功能。我可以使用一个名为 JLine 的库来实现这一点。但是,我无法重定向 JLine 的输入和输出以使用curses 中的文本区域,而不是标准输入/输出。Swing 也是如此。因此,为什么我试图找到一个非诅咒/摇摆基础的解决方案。

我希望能够在一列中显示命令行交互的正常输出,同时在另一列中显示更多“持久”信息。