Smalltalk - чтение ввода с клавиатуры

Как мне прочитать ввод пользователя в Smalltalk squeak? Просто хочу создать новую переменную и инициализировать ее числом, полученным с клавиатуры.


person Yuval Levy    schedule 08.04.2014    source источник
comment
Можете ли вы быть более конкретным, какой smalltalk вы используете?   -  person Tobias    schedule 08.04.2014
comment
болтовня в писк! окна   -  person Yuval Levy    schedule 08.04.2014
comment
Это сильно зависит от того, как вы хотите это сделать. Обычно вы делаете это из среды Squeak (изображение). Но, конечно, в принципе можно читать из stdin (хотя я этого не рекомендую) или из запроса http (или подобного). Поэтому нам действительно нужно знать, что именно точно вы пытаетесь выполнить (дайте нам точный вариант использования).   -  person Max Leske    schedule 08.04.2014


Ответы (1)


Традиционным способом является всплывающее небольшое диалоговое окно для ввода ввода.

FillInTheBlank request: 'enter initial value'.

Это работало в st-80 и до сих пор работает в последней версии Squeak (4.5). Это ответит на строку, которую вы позже сможете интерпретировать по своему усмотрению. Хотя модернизированный способ - запросить UIManager:

| answer initialValue |
answer := UIManager default request: 'enter initial value'.
initialValue := Number readFrom: answer ifFail: [self error: 'Sorry, this was not a well formed number'].
^initialValue
person aka.nice    schedule 10.04.2014