Как я могу создать консольное текстовое поле? - PullRequest
0 голосов
/ 15 августа 2011

Я делаю программу под названием «BasicSys».Это базовый симулятор системы, который использует текстовое поле для консоли.Пока у меня все работает отлично, но мне нужно, чтобы текстовое поле действовало как окно командной строки.Он должен иметь возможность запрашивать ввод и извлекать значение, не позволяя пользователю изменять что-либо за пределами пространства приглашения (пространство, в котором пользователь должен иметь возможность вводить только после «:» или «>»).Некоторые поля - это поля паролей, которые не требуют повторения или заменяют символы в *.Можно ли сделать консоль из текстового поля?

PS Я также хочу знать, есть ли какие-нибудь небольшие компиляторы BASIC v2 для Win32, чтобы BasicSys мог компилировать и запускать программы на BASIC.

1 Ответ

2 голосов
/ 16 августа 2011

В зависимости от того, насколько реалистичным вы хотите его видеть, вы можете использовать API, чтобы открыть окно реальной консоли и взаимодействовать с ним. Есть много примеров, которые вы можете найти, выполнив поиск, например this . Мое предложение, однако, было бы подделать его с многострочным текстовым полем. Это было бы не очень сложно. Устанавливайте индекс каждый раз, когда вы рисуете подсказку, затем, пока курсор находится после индекса, текстовое поле доступно для чтения / записи. Если пользователь прокручивает назад, сделайте текстовое поле доступным только для чтения. Это должно быть довольно просто с использованием события KeyDown и установки свойства ReadOnly True / False, чтобы получить проходимое «командное» окно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...