Octave 从命令窗口以外的地方获取八度输入

Octave 从命令窗口以外的地方获取八度输入,octave,Octave,我是八度音阶的初学者。我需要做一个关于向量的程序,我需要用户输入来画向量。我可以从命令窗口获得输入,但我需要它像图形窗口一样,我希望它弹出。有办法吗?使用inputdlg() 您可以使用该函数轻松创建字符串和数字数据的图形输入界面。下面是一个简单的例子: myinp = inputdlg({'width','height'},'Please input data!',1,{2.5,320.9}) 这将创建以下对话框: 按OK键后,返回以下结果(取决于您的输入): 使用addlistener(

我是八度音阶的初学者。我需要做一个关于向量的程序,我需要用户输入来画向量。我可以从命令窗口获得输入,但我需要它像图形窗口一样,我希望它弹出。有办法吗?

使用inputdlg() 您可以使用该函数轻松创建字符串和数字数据的图形输入界面。下面是一个简单的例子:

myinp = inputdlg({'width','height'},'Please input data!',1,{2.5,320.9})
这将创建以下对话框:

按OK键后,返回以下结果(取决于您的输入):

使用addlistener() 上面的解决方案创建了一个弹出式输入对话框,可能不是您想要的。要基于鼠标坐标获取输入,您可以使用该功能从
轴获取当前选定的点坐标,只要对象的属性发生更改,即可从当前轴获取对象的属性

% Create a new axis system in current window
ax = axes();
% Define a listener function that does something with the selected points
listener = @(ah) display(get(ah,'currentpoint'));
% Add Listener to current axis property
addlistener(ax,'currentpoint',listener);
无论何时单击轴系统,都会在控制台输出上看到当前坐标。当然,这不是一个完整的解决方案,你的要求,还有一些家庭作业要做

使用ginput()
使用ginput()函数,您可以收集一个或多个鼠标单击位置和单击的鼠标按钮数。

欢迎使用堆栈溢出。你没有准确地说明你的计划来回答你的问题。您是否尝试过研究如何用八度音阶编写图形用户界面(GUI)?在这里查看您的选项:一般来说,如果您提供更多关于您正在尝试做什么以及到目前为止您已经尝试了什么的信息,并且提供最简单的代码来直接说明问题总是很好的(请参阅本文:)。请看
ginput
函数
% Create a new axis system in current window
ax = axes();
% Define a listener function that does something with the selected points
listener = @(ah) display(get(ah,'currentpoint'));
% Add Listener to current axis property
addlistener(ax,'currentpoint',listener);