Как проверить, открыто ли число и как закрыть его?

Попробуйте - как EmployeeID вряд ли может быть пустой строкой):

Status: IIf([EmployeeID] Is Null, "Available", "Not available"))
11
задан Andrea Ambu 22 January 2009 в 21:24
поделиться

5 ответов

close all

Закроет все открытые числа.

Можно использовать findobj() найти объекты, которые могут существовать путем определения поисковых параметров. Например:

figure('name','banana')

Создает число с бананом имени.

close(findobj('type','figure','name','orange'))

Ничего не делает, потому что нет никаких чисел, открытых с оранжевым именем.

close(findobj('type','figure','name','banana'))

Закрывает число.

Можно указать поисковые параметры для удовлетворения потребностей.

18
ответ дан 3 December 2019 в 01:39
поделиться

В MATLAB можно ПОЛУЧИТЬ информацию о 'корне'. Иллюстрации являются детьми 'корня' (дескриптор корня 0), они - единственные дети корня.

http://www.mathworks.com/help/techdoc/creating_plots/f7-41259.html

Зная это, можно попробовать этот код, который ищет детей корня и дает Вам список.

>> close all
>> get(0,'children')
ans =
   Empty matrix: 0-by-1
>> figure(1)
>> get(0,'children')
ans =
     1
>> figure(3)
>> get(0,'children')
ans =
     3
     1

Я думаю, что Вы найдете это самым прямым способом запросить, какие числа открыты.

4
ответ дан 3 December 2019 в 01:39
поделиться

Для закрытия числа существует "близкая" функция. Я все еще смотрю, чтобы проверить, открыто ли число.

0
ответ дан 3 December 2019 в 01:39
поделиться

Я немного неясен о том, под чем Вы подразумеваете "открытый". Иллюстрации действительно не имеют "открытых" или "закрытых" состояний. Они или существуют, или они не делают. Команда FIGURE возвратит дескриптор числу, которое она делает:

hFig = figure(...your arguments here...);

Можно также получить дескриптор числа от функции FINDOBJ, которая найдет все графические объекты, соответствующие значениям свойств, которые Вы передаете ей:

hFig = findobj(...your property/value pairs here...);

Можно избавиться от числа с любой из этих команд:

close(hFig);
delete(hFig);

Можно проверить, было ли число закрыто/удалено с помощью функционального ISHANDLE:

ishandle(hFig)  %# Returns 'true' if the figure exists, 'false' if it doesn't

Иллюстрации могут также быть "видимыми" или "невидимыми". У них есть a 'Visible' свойство, из которого можно получить или установить значение:

get(hFig,'Visible')        %# Returns 'on' or 'off'
set(hFig,'Visible','off')  %# Makes a figure invisible, but it still
                           %#   exists (i.e. it's not closed)

Если Вы желаете проверить, минимизировано ли число, который может быть немного более трудным. Я полагаю, что существуют некоторые файлы, которые могут помочь Вам с этим на MathWorks File Exchange: вот для проверки.

14
ответ дан 3 December 2019 в 01:39
поделиться
isempty(findobj('name','Your_Figure_Name'))

если ответ 0, то ваша цифра открыта

.
2
ответ дан 3 December 2019 в 01:39
поделиться
Другие вопросы по тегам:

Похожие вопросы: