问题描述
我在 Python 中运行一个多处理系统,我打算使用 Curses 将终端窗口划分为 4 个象限,并在其中一个象限中显示每个进程的输出。
所以,最终的输出应该是这样的:
--------------------------------
| | |
| PROCESS01 | PROCESS02 |
| | |
---------------------------------
| | |
| PROCESS03 | PROCESS04 |
| | |
---------------------------------
到目前为止,我尝试将窗口分成 4 个焊盘,如下所示:
def main():
screen = curses.initscr()
cols_tot = curses.COLS
rows_tot = curses.LInes
cols_mid = int(0.5*cols_tot) ## middle point of the window
rows_mid = int(0.5*rows_tot)
pad11 = curses.newpad(rows_mid,cols_mid)
pad12 = curses.newpad(rows_mid,cols_mid)
pad21 = curses.newpad(rows_mid,cols_mid)
pad22 = curses.newpad(rows_mid,cols_mid)
pad11.addstr(0,"*** PROCESS 01 ***")
pad12.addstr(0,"*** PROCESS 02 ***")
pad21.addstr(0,"*** PROCESS 03 ***")
pad22.addstr(0,"*** PROCESS 04 ***")
pad11.refresh(0,rows_mid,cols_mid)
pad12.refresh(0,cols_mid,cols_tot-1)
pad21.refresh(rows_mid,cols_tot-1,rows_mid)
pad22.refresh(rows_mid,rows_tot-1,cols_tot-1)
curses.napms(3000)
curses.endwin()
if __name__ == '__main__':
main()
但我收到错误:
File "screen_show.py",line 78,in <module> main()
File "screen_show.py",line 46,in main
pad12.refresh(0,cols_tot-1)
_curses.error: prefresh() returned ERR
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)