algorithm - 如何使按钮在 GUI 中不可见?

标签 algorithm matlab user-interface audio wav

我想用我的按钮在打击乐背景图像区域播放我的 wav,所以我需要我的按钮在我的图形窗口中不可见。

我的脚本:

% --- Executes on button press in pushbutton1.
function pushbutton1_Callback(hObject, eventdata, handles)
% hObject    handle to pushbutton1 (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)
[s,fs]=wavread('filename.wav');
sound(s,fs);

谢谢你..

最佳答案

要使您的按钮在您单击时不可见,请在回调函数中将visible设置为off

set(hObject, 'Visible', 'off')

要使其在您的 GUI 中的其他部分/功能中不可见,只需将 hObject 替换为您的按钮的句柄


更新:

您可以制作可点击的图像并针对不同的点击位置播放不同的声音。使用回调 'ButtonDownFcn' 触发图像中的点击事件。您可以使用轴属性 'CurrentPoint' 检索点击的位置。此返回为具有 x-y-z 投影坐标的 2x3 矩阵。但是当您使用 2D 图时,您可以简单地选择前 2 个值,阅读更多 here .

然后使用 x/y 坐标找出用户点击的图像中的内容并为其播放声音。

一个简单的例子:

% Draw an image
figure()
imHandle = image(imread(figPath));
% Set callback function (target function could have any name)
set(imHandle,'ButtonDownFcn', @ImgClickCB); 

和回调函数(显示x和y坐标。)

function ImgClickCB(hObject, ~)
clickPoint = get( get(hObject,'Parent'), 'CurrentPoint');
fprintf('Clicked at x: %0.f y: %0.f \n', clickPoint(1,1), clickPoint(1,2));

关于algorithm - 如何使按钮在 GUI 中不可见?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39653939/

相关文章:

matlab - Matlab中 "Run"按钮上的蓝色圆圈是什么意思?

matlab - waitbar -> 条形图的长度?

java - 找到最少的列数

算法校正数字线上数据点之间的噪声距离测量

matlab - 如何正确存储与 parfor 一起使用的变量?

java - 关于流程布局工作的困惑

python - PyQT实时显示串口数据在QtCore.QTimer.singleShot()上抛出最大递归深度超出异常

python - PySimpleGui 输出标题栏名称问题

algorithm - John Tukey "median median"(或 "resistant line")R 和线性回归的统计检验

c++ - 整数集之间的映射