繁体   English   中英

如何在Python curses中访问curscr?

[英]How do I access curscr in Python curses?

在Python中使用curses时,我知道如何使用curses.initscr()返回的stdscr 如何访问保存当前屏幕图像的curscr

背景:我有几个(重叠)窗口。 为了使它们看起来不错,我添加了阴影。 为了获得更多的糖果,我希望阴影是基础文本的黑白版本,因此我需要获取窗口阴影覆盖的文本。 如果我使用stdscr.inch(y, x)stdscr.inch(y, x)得到所有空格,因为我的stdscr是空的(所有内容都使用Windows显示)。

ncurses C API包含curscr ,我相信它可以解决我的问题。 目前唯一的其他解决方案是跟踪所有现有的窗口(我已经将它们包装在python类中),以防万一我需要从屏幕上获取字符,请遍历所有已知的窗口并检查它们是否与我的测试相交点(增加了更多的复杂度,因为我也需要实现Z轴管理)。

此刻的外观(注意白色上下文菜单如何与总线节点窗口重叠,而左下角/右上角未使用正确的属性):

ssh上我的家庭自动化文本界面的屏幕截图

尽管我没有找到使用curscr的解决方案,但我实现了自己的窗口管理器类,该类负责正确的刷新顺序,不需要使用curscr进行正确的重叠。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM