Получите положение компонента в пикселях
Используйте эту функцию только с GUIDE, или с приложениями, созданными с помощью функции figure
.
position = getpixelposition(handle)
position = getpixelposition(handle,recursive)
position = getpixelposition(handle)
получает положение, в пикселях, компонента, заданного handle
. MATLAB® возвращает position
как четырехэлементный вектор, который задает местоположение и размер компонента: [расстояние от левого, расстояние от нижней части, ширины, высота].
position = getpixelposition(handle,recursive)
получает положение как выше. Если recursive
верен, возвращенное положение относительно родительской фигуры handle
.
Используйте функцию getpixelposition
только, чтобы получить координаты для дочерних элементов фигур, созданных с функцией figure
, или для дочерних контейнеров фигуры (таких как панели или группы кнопок). Результаты не надежны для дочерних элементов осей или других графических объектов.
Этот пример создает кнопку в панели, и затем получает ее положение, в пикселях, относительно панели.
f = figure('Position',[300 300 300 200]); p = uipanel('Position',[.2 .2 .6 .6]); h1 = uicontrol(p,'Style','PushButton',... 'Units','Normalized',... 'String','Push Button',... 'Position',[.1 .1 .5 .2]); drawnow; pos1 = getpixelposition(h1)
pos1 = 18.6000 12.6000 88.0000 23.2000
Следующий оператор получает положение кнопки, в пикселях, относительно фигуры.
pos1 = getpixelposition(h1,true)
pos1 = 78.6000 52.6000 88.0000 23.2000