3

Не знаю, что еще я могу сказать на самом деле. Это окно, захваченное ниже, просто не станет больше. Есть ли где-нибудь настройки, которые позволят мне изменить его размер?

командная строка

Видите ли, это ограниченное окно оставило меня в некотором рассоле. По сути, я создал приложение с графическим интерфейсом командной строки (с библиотекой Ruby's Curses), и, хотя все прекрасно работает на терминалах OSX и Ubuntu, с командной строкой, если Windows Curses больше, чем окно командной строки, как показано ниже, все приложение вылетает с ошибкой «окно уже закрыто».

Итак, есть ли параметр, который позволяет пользователям изменять размер своего окна командной строки, что мне нужно будет добавить в документацию.

Вот что ответит Святой Грааль:

Есть ли способ сделать это из командной строки? Могло ли мое приложение определить, имеет ли запущенная им командная строка фиксированную ширину, и на самом деле программно запустить команду, чтобы разрешить увеличение окна командной строки? Или, по крайней мере, дать пользователю полезное сообщение об ошибке?

3 ответа3

4

Вы можете изменить с помощью командного mode con

Например, чтобы изменить размер на 120x40

mode con:cols=120 lines=40

Вы также можете изменить только ширину или высоту, указав cols или lines

mode con: lines=40

Пробел между con: и cols или lines не обязателен

Я не знаю, может ли Ruby получить доступ к Windows API или нет, но вы можете выполнить вышеуказанные команды, чтобы изменить размер по своему желанию. Если он не поддерживает запуск команды напрямую, вы можете запустить его через cmd

cmd.exe /c mode con:cols=NUMCOLS lines=NUMLINES

Для некоторых других языков вы можете напрямую изменить размер окна консоли через консольный API

using System;

class Program
  {
     static void Main()
     { 
        Console.SetBufferSize(100, 9999); 
     }
  }

РЕДАКТИРОВАТЬ: более короткая команда

mode WIDTH,HEIGHT
mode 120,40

Это недокументированная особенность команды mode

Syntax
...
   Display size - number of columns wide and number of lines deep:
      MODE CON[:] [COLS=c] [LINES=n]

   undocumented) abbreviated version of the above:
      MODE Cols, Lines
2

У вас есть два варианта:

  1. Вы можете изменить размер окна с помощью кода (я не знаю, как это сделать из Ruby)
  2. Пусть ваши пользователи нажмут на значок в левом верхнем углу и перейдут к properties , в layout вы можете установить размер.

2

Щелкните правой кнопкой мыши строку заголовка и выберите «Свойства» или «По умолчанию» (если вы хотите, чтобы это изменение сохранялось).

Зайдите на вкладку Layout и выберите ширину. Вы можете изменить это значение по своему вкусу

Прибыль. :)

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .