一次显示多个菜单,工作流程

时间:2013-01-25 00:15:34

标签: c++ ncurses

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

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

我无法弄清楚如何将焦点传达给用户。例如,

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

当菜单可见时,已填充的菜单会激活光标(由&gt;&lt; entries表示)。我希望能够同时激活一个菜单,通过一个可见或特殊的光标,我可以构建工作流程。

我该怎么做?在最高级别,我想要的是在屏幕上显示项目列表,用户可以根据我设置的逻辑进行选择。

1 个答案:

答案 0 :(得分:0)

ncurses允许您使用set_menu_foreset_menu_backset_menu_grey等功能来混淆菜单的颜色。这是我走的路线。我的另一个想法(但后来由于记账太多而决定反对)是使用wattronwattroff重新着色菜单窗口。