воскресенье, 10 февраля 2013 г.

графическое окно в с++

Выясните теперь тип каждого из потомков, выводя значение его свойства Type:

Оказывается, что у графического окна 9 потомков, в вектор hFC занесены указатели на них (числовые значения могут отличатся от приводимых ниже):

Используйте теперь функцию allchild для получения потомков графического окна (в следующих разделах мы рассмотрим этот вопрос подробнее):

Разберем теперь несколько более сложный вопрос, как оставить только нужные меню и кнопки на панели инструментов. Создайте графическое окно и сохраните указатель на него в переменной hF:

hF = figure('NumberTitle', 'off', 'Name', 'Исходные данные')

Для задания заголовка графического окна служат два его свойства Name и NumberTitle. Значение NumberTitle отвечает за вывод слова Figure и номера окна: 'on' - выводить (по умолчанию), 'off' - не выводить. Значением свойства Name может быть текстовая строка. Эти два свойства позволяют оформить заголовок графического окна по своему усмотрению, например:

к созданию окна только со строкой меню (см. рис. 2).

приводит к появлению окна только с панелью инструментов, а

hF=figure('ToolBar', 'figure', 'MenuBar', 'none')

Свойство MenuBar графического окна может принимать только два значения: 'on' или 'off', что приводит к отображению или скрытию одновременно панели инструментов и меню. Обсудим теперь, как управлять ими по отдельности, например, как получить графическое окно без панели инструментов, содержащее только меню, или наоборот - только панель инструментов. Для этого обращаются к свойству ToolBar, принимающему значения: 'none' (убрать панель инструментов) и 'figure' (добавить панель инструментов, как по умолчанию). Например:

1 1 1024 768

scrsize = get(0, 'ScreenSize')

Толщина левой, нижней и правой границы рамки 5 пикселей, а под заголовок отведено 30 пикселей. Этих сведений, однако, недостаточно для расположения графического окна - необходимо знать еще и текущие размеры экрана монитора в пикселях. Для этого придется прибегнуть к предку графического окна - корневому объекту Root, свойства которого служат для определения системных настроек компьютера и значений, принятых в MatLab по умолчанию. Указатель на объект Root всегда равен нулю. В нашем примере необходимо обратиться к свойству ScreenSize объекта Root, значением которого является вектор с координатами левого нижнего угла монитора, его ширины и высоты (по умолчанию, в пикселях):

Рис. 1. Смысл свойства Position графического окна

Теперь рамка видна (см. рис. 1)

hF = figure('Color', 'w', 'MenuBar', 'none')

При выводе результатов в графические окна сразу же возникает вопрос о задании положения и размеров графических окон на экране. Они определяются значением свойства Position графического окна, которое является вектором [x y width height]. Здесь x и y - координаты нижнего левого угла рабочей области окна, а width и height - ширина и высота рабочей области, соответственно. По умолчанию, единицы измерения - пиксели (можно выбрать и другие, установив свойство окна Units в подходящее значение: 'normalized', 'inches', 'centimeters', 'points', 'characters'). Слова "рабочая область" означают, что берется часть окна, ограниченная рамкой и заголовком. В присутствии рамки легко убедиться, создав графическое окно белого цвета и без строки меню и панели инструментов с использованием свойств Color и MenuBar:

Расположение и вид графических окон

Свойства графических окон

Дескрипторная графика

Комментариев нет:

Отправить комментарий