버전 (2.37 KB) 작성자: Toby Driscoll
A simple, flexible, and overridable graphical replacement for INPUT.

다운로드 수: 3.5K

업데이트 날짜: 2003/5/19

라이선스 보기

INPUTGUI allows a user to set function parameters through an input dialog window. It's meant to be a replacement for INPUT. Among its virtues is that the dialog popup can be overriden either by accepting defaults or by assigning (some of the) values through the function call. It's also meant to be very easy to use.

The standard calling sequence is

value = INPUTGUI(name,default,prompt)

Arguments name, default, and prompt are identically sized cell arrays of strings. They define the names, default values, and interactive prompt strings for the parameters, which are assumed to be numerical.

On exit, each parameter value will be assigned *in the caller's workspace*.

INPUTGUI(name,default,prompt,isstring) adds a logical vector that designates corresponding parameters as strings.

INPUTGUI(...,action) modifies the behavior:
'default': Default values are returned for all parameters (no dialog is opened).
struct: Each parameter will have the default value unless overridden by a field of the same name (no dialog).
[]: Standard behavior.

For example, suppose you wrote the function

function y = inputtest(varargin)
name = { 'Moe', 'Larry', 'Curly' };
default = { '1/pi', '[-1 0 1]', 'silly' };
prompt = { 'Value of Moe', 'Value of Larry', 'Value of Curly' };
isstring = logical( [0 0 1] );
vals = inputgui(name,default,prompt,isstring,varargin{:})
whos Moe Larry Curly

Then we get
>> inputtest % Brings up a dialog. Press OK and...
vals =

[ 0.3183]
[1x3 double]

Name Size Bytes Class
Curly 1x5 10 char array
Larry 1x3 24 double array
Moe 1x1 8 double array

>> s.Larry = 16; inputtest(s) % No dialog appears...
vals =

[ 16]

Name Size Bytes Class
Curly 1x5 10 char array
Larry 1x1 8 double array
Moe 1x1 8 double array

The return argument "value" will be a cell array of the assigned values, as strings. You can assign this to a persistent variable and use it on the next call as the default.

인용 양식

Toby Driscoll (2022). inputgui (, MATLAB Central File Exchange. 검색됨 .

MATLAB 릴리스 호환 정보
개발 환경: R13
모든 릴리스와 호환
플랫폼 호환성
Windows macOS Linux

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!