16 std::vector<std::string> entries = {
21 int menu_1_selected = 0;
22 int menu_2_selected = 0;
24 bool menu_1_show =
false;
25 bool menu_2_show =
false;
27 auto layout = Container::Vertical({
28 Checkbox(
"Show menu_1", &menu_1_show),
29 Radiobox(&entries, &menu_1_selected) | border |
Maybe(&menu_1_show),
30 Checkbox(
"Show menu_2", &menu_2_show),
31 Radiobox(&entries, &menu_2_selected) | border |
Maybe(&menu_2_show),
35 }) |
Maybe([&] {
return menu_1_selected == 1 && menu_2_selected == 2; }),
static ScreenInteractive TerminalOutput()
Component Maybe(Component, const bool *show)
装饰一个组件 |child|。它仅在 |show| 为 true 时显示。
Component Radiobox(RadioboxOption options)
元素列表,其中只能选择一个。
Component Renderer(Component child, std::function< Element()>)
返回一个新组件,类似于 |child|,但使用 |render| 作为 Component::Render() 事件。
Component Checkbox(CheckboxOption options)
绘制可勾选元素。
Element text(std::wstring text)
显示一段Unicode文本。
Decorator color(Color)
使用前景色进行装饰。
#include "ftxui/component/component_base.hpp" // 用于 ComponentBase