В рассматриваемом примере не предусмотрено
В рассматриваемом примере не предусмотрено какого-либо "управления" графиками - после первого выполнения команд "Синус" или "Косинус" они остаются как в памяти, так и на экране. В этом случае не было необходимости вычислять их заново при каждом выполнении функции Paint(); заполнить массивы
250 Глава 27
sine[] и cosine[] можно было на этапе инициализации, например, в конструкторе MyWindow. В следующем примере, где предусмотрен вывод любой комбинации графиков по желанию, их вычисление в функции Paint() становится более оправданным.
Действия с объектами меню
Базовые операции с меню, рассмотренные в предыдущем примере, не требовали использования классов меню, определенных в библиотеке OWL - достаточно было установить меню с помощью функции AssignMenu() и предусмотреть таблицу и функции откликов на команды меню.
Если же в программу желательно включить элементы динамического управления меню, такие, как добавление, удаление или модификация команд меню (прикладного или системного), добавление к пунктам меню маркеров, гашение недоступных пунктов, вывод меню в произвольное место окна и др., то следует обратиться к классам меню библиотеки OWL. В OWL описаны три класса меню - класс TMenu, в котором определено большинство функций, требуемых для работы с меню, класс TSystemMenu, назначение которого видно из названия, и класс TPopupMenu для работы со всплывающими меню. В примере 27-3 будет продемонстрировано использование классов TMenu и TPopupMenu.
Пример 27-3 является развитием предыдущего. В меню "Графики" добавлены команды для вывода на экран еще двух тригонометрических функций - sin(x)/x и cos(x)/x. Предусмотрена возможность отображения на экране любого сочетания четырех доступных графиков, причем вывод графика сопровождается появлением маркера перед соответствующей командой меню, а вторичный выбор этой команды гасит как маркер, так и сам график. Щелчком правой клавиши мыши активизируется плавающее меню, в котором можно выбрать масштаб вывода графиков. На рис. 27.5 показан вывод приложения 27-3 в одном из вариантов.
Содержание Назад Вперед
Forekc.ru
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий