MATLAB скрыть окно источника данных при использовании источника данных - PullRequest
2 голосов
/ 21 марта 2012

Я использую MATLAB для создания GUI.У меня есть изображение, на котором включен режим передачи данных.Это отлично работает, каждый раз, когда я нажимаю, добавляется новая точка.Для каждой точки MATLAB отображает поле с координатами (или любым другим текстом, я изменил его, используя функцию обновления).Но как я могу удалить это текстовое поле, я просто хочу добавить точку, никакая дополнительная информация не должна отображаться?

Спасибо!

1 Ответ

1 голос
/ 21 марта 2012

datacursormode on используется для включения отображения подсказок данных на графическом объекте.Другими словами, это текстовое поле, которое вы хотите скрыть.Какая причина тогда использовать datacursor?

Используете ли вы UpdateFcn курсора данных, чтобы «добавить пиксель» (вы, вероятно, хотите изменить цвет пикселей)?Попробуйте вместо этого использовать ButtonDownFcn функцию обратного вызова.

function interactive_image(im)
    fh = figure;
    hImage = imshow(im);
    set(hImage,'ButtonDownFcn',@myfunction)
end

function output_txt = myfunction(obj,eventdata,handles)
    pos = get(gca,'CurrentPoint')
    x = get(obj,'CData');
    x(uint32(pos(1,2)),uint32(pos(1,1))) = 0;
    set(obj,'CData',x)
end

ОБНОВЛЕНИЕ :

Согласно вашему комментарию лучше использовать IMPOINT функция доступна в панели инструментов обработки изображений.

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