MATLAB: печать текста в поле ввода - PullRequest
1 голос
/ 09 апреля 2010

Используя MATLAB,

У меня есть этот код:

value = input('>> Enter a value: ');

и, в основном, я хочу значение "по умолчанию" справа от двоеточия

(вроде как)

>> Enter a value: 12

, где "12" редактируется так, что пользователь может [вернуться назад] [вернуться назад] и изменить значение, скажем, на "20" или что-то еще.

Есть ли (простой) способ сделать это?

Спасибо!

Ответы [ 2 ]

4 голосов
/ 09 апреля 2010

Вы можете взломать поведение, но не внешний вид, с помощью:

myDefault = 12;
x = input(['Enter a value (press Enter for default = ' num2str(myDefault) ')']);
if (isempty(x))
    x = myDefault;
end

Ужасно, но я не знаю более простого способа.

3 голосов
/ 09 апреля 2010

Вы всегда можете пойти по маршруту с графическим интерфейсом и использовать функцию INPUTDLG , чтобы создать диалоговое окно, как описано в в этом блоге MathWorks . Например:

b = inputdlg('What kind of Peanut Butter would you like?');

Создает следующее диалоговое окно:

alt text

Вы можете легко добавить значения по умолчанию для входов. Вот диалоговое окно для вашего примера:

value = inputdlg('Enter a value:','Input',1,{'12'});

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

...