【问题标题】:Menu dividers in ncursesncurses 中的菜单分隔符
【发布时间】:2015-12-24 06:09:48
【问题描述】:

我想在 ncurses 中构建一个带有部分分隔符的菜单。

我的示例列表如下所示:

Aardvark
Apple
Bee
Cat
Kitten
Kalashnikov
Waffle

我想要的是不可选择的分隔线。像这样的:

(A) ----
Aardvark
Apple
(B) ----
Bee
(C) ----
Cat
(K) ----
Kitten
Kalashnikov
(W) ----
Waffle

有没有内置的方法来做到这一点?

更具体地说,我正在使用这个 ruby​​ gem:https://github.com/eclubb/ncurses-ruby 我更喜欢通用的答案,但如果它可以通过 Ruby 的真棒来解决,那也很酷。

【问题讨论】:

标签: c ruby ncurses


【解决方案1】:

假设您正在谈论 ncurses menu 库(作为“内置”),您可以使用 set_item_opts 创建一个不可选择的项目。

【讨论】:

  • 再次完美!抓住了这个问题和我的另一个(有点相关)问题:stackoverflow.com/questions/34449492/…
  • 在对此进行了一些实验之后,看起来我仍然可以用光标在该项目上移动,即使它不是“可选择的”。 menu_driver REQ__ITEM 方法是否有内置方法可以跳过这些项目?
  • 您可以在驱动程序回调中执行此操作(驱动程序只传递事件,回调可以根据需要进行解释)。
  • 谢谢 - 这对我有用。每当当前项目的user_object 为零时,我最终都会再次调用REQ_<UP/DOWN>_ITEM。 (加上一些其他逻辑来处理列表中的第一项。)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多