0

我正在做一个玩具项目,实现流行的纸牌游戏 Dominion 的桌面客户端。我认为使用 ncurses 库在终端中显示 UI 会很有趣。

我需要显示玩家的手牌、他们玩过的牌以及他们可以购买的牌等内容。我设想将这些显示为 ncurses 菜单,内嵌在屏幕上。

我想不通的是如何将焦点传达给用户。例如,

|          |  |               |
|  Copper  |  |  >Adventurer< |
|  Copper  |  |   Chapel      |
|  Copper  |  |   Moat        |
| >Copper< |  |   Thief       |
|  Copper  |  |               |
|          |  |               |
|          |  |               |

当菜单可见时,已填充的菜单会激活光标(由 > < 条目表示)。我希望能够一次激活一个菜单,方法是使用一个可见的或其他特殊的光标,我可以围绕该光标构建工作流程。

我怎样才能做到这一点?在最高级别,我想要在屏幕上显示项目列表,用户可以根据我设置的逻辑进行选择。

4

1 回答 1

0

ncurses 允许您使用set_menu_fore,set_menu_backset_menu_grey. 这是我走的路线。我的另一个想法(但后来因为记账太多而决定反对)是使用wattron和重新着色菜单窗口wattroff

于 2013-02-06T01:11:31.377 回答