2008-09-26 3 views
49

Существуют ли какие-либо библиотеки ncurses в C/C++ для Windows, которые эмулируют ncurses в родных изменяемых размерах окна Win32 (не в режиме консоли)?Доступны ли ncurses для окон?

+0

ли вы знаете [PDCurses] (http://pdcurses.sourceforge.net/)? Это реализация библиотеки curses для Windows. Разве это не то, что вы ищете? Что вы подразумеваете под консольным режимом? – nnyby 2009-09-15 10:44:24

+0

Я использую PDCurses, и хотя документы требуют, что вы можете изменить размер окна, Я не смог это сделать. Вы ограничены настройками окна консоли. – EvilTeach 2010-03-08 20:29:25

+0

EvilTeach вы можете изменить размер окна с помощью PDCurses, проверить testcurs.c в демонстрациях PDCurses, он демонстрирует этот эффект. – Bach 2010-06-16 12:45:04

ответ

15

Такая вещь, вероятно, не существует «как есть». На самом деле это не существует в Linux или других UNIX-подобных операционных системах.

ncurses - это только библиотека, которая поможет вам управлять взаимодействием с базовой терминальной средой. Но он сам не предоставляет эмулятор терминала.

Вещь, которая на самом деле отображает материал на экране (который по вашему требованию указан как «родные изменчивые окна win32») обычно называется терминальным эмулятором. Если вам не нравится тот, который поставляется с Windows (вы не одиноки, ни один человек на Земле), есть несколько альтернатив. Существует Console, который по моему опыту иногда работает и, кажется, просто обертывает базовый эмулятор терминала Windows (я не знаю точно, но я предполагаю, так как есть пункт меню, чтобы фактически получить доступ к этому базовому эмулятору терминала , и, конечно же, появится старое явное окно Windows/DOS, которое отображает все в окне консоли).

Лучший вариант

Другой вариант, который может быть более привлекательным является puttycyg. Он подключается к Putty (который, исходя из фона Linux, довольно близок к тому, к чему я привык, и бесплатному), но на самом деле обращается к базовому cygwin вместо интерпретатора команд Windows (CMD.EXE). Таким образом, вы получаете все преимущества превосходного эмулятора терминала Putty, а также красивые ncurses (и многие другие) библиотеки, предоставляемые cygwin. Добавьте пару аргументов командной строки в ярлык, который запускает Putty (или пакетный файл), и ваше приложение может автоматически запускаться без прохождения через интерфейс Putty.

Смежные вопросы