18class ClearUnder :
public NodeDecorator {
22 void Render(Screen& screen)
override {
23 for (
int y = box_.y_min; y <= box_.y_max; ++y) {
24 for (
int x = box_.x_min; x <= box_.x_max; ++x) {
25 screen.PixelAt(x, y) = Pixel();
26 screen.PixelAt(x, y).character =
" ";
38 return std::make_shared<ClearUnder>(std::move(element));
NodeDecorator(Element child)
friend void Render(Screen &screen, Node *node, Selection &selection)
Element clear_under(Element element)
在绘制 |child| 之前,清除下方的像素。这与 dbox 结合使用很有用。
void Render(Screen &screen, const Element &element)
在 ftxui::Screen 上显示元素。
#include "ftxui/component/component_base.hpp" // 用于 ComponentBase
std::shared_ptr< Node > Element