首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >python Curses与Asciimatics的结合

python Curses与Asciimatics的结合
EN

Stack Overflow用户
提问于 2021-03-10 22:59:37
回答 1查看 114关注 0票数 1

我已经用Python做了一个诅咒程序,不知道我是否可以在里面添加一些动画?我的目标是在我的一个诅咒窗口中添加动画效果,但似乎我无法更改或调整添加了asciimatics效果的屏幕大小。

是否可以调整asciimatics屏幕的大小以将其添加到我的诅咒窗口中?

EN

回答 1

Stack Overflow用户

发布于 2021-03-12 16:13:07

编辑:增加了使用现有咒语句柄的选项。

简短的答案可能不是不对你的应用程序或asciimatics做一些修改。

最简单的选择是让asciimatics在运行动画时接管。例如,如果这是一个标题页面,只需在初始化应用程序的ncurses之前运行它即可。

如果你真的想把它嵌入到同一个屏幕中,你需要做更多的工作……

首先,让我们弄清楚环境的细节……Asciimatics在本地可用的系统(例如Linux,mac)上使用ncurses,在Windows上使用win32,所以如果你在Windows上使用像PDcurses这样的东西,这是不兼容的。抱歉--没有真正的选择。

但是,如果您只使用像Linux这样的本机curses系统,您有几个选择...

  1. 将您的咒骂调用转换为等效的屏幕调用。打印、使用颜色和获取字符输入之间存在明显的一对一映射关系。如果你需要多个curses窗口,你可以使用画布(或者可能的框架,如果这是一个UI),以获得相同的效果在asciimatics。

  1. 考虑在https://github.com/peterbrittain/asciimatics/issues/46上工作。这将允许您直接在现有屏幕上开始绘图,而不是假设asciimatics可以初始化ncurses,然后完全控制屏幕(包括清除屏幕和控制刷新)的当前实现。

  1. 将你的诅咒屏幕句柄传递给asciimatics,然后确保你的更新与动画协同工作。如您所见,如果您已经有一个屏幕句柄,则可以构造curses here处理程序。

选项1可能是最安全的,因为它使用单个一致的API。如果你去asciimatics大厅( github主页上的链接),我可以帮你解决2个问题。选项3可能可行,但使用内部API (因此将来可能会中断),并且您需要将更新与asciimatics同步

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66567319

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档