
Введение
В данных методических указаниях мы ставим задачу описать методику разработки средствами Фортрана приложений , обладающих дружественным интерфейсом. Наибольшее распространение имеют версии языки Фортран, интегрированные в платформу MS Developer Studio (Compag Visual Fortran, Intel Visual Fortran). На этой платформе Фортран позволяет создать три вида проектов - приложений, а именно:
Fortran Console Application
Это простейший вид приложений, обеспечивающий только символьный ввод/вывод. Пользовательский интерфейс (взаимодействие с программой) осуществляется с помощью обычных инструкций READ / WRITE. Преимуществом этих приложений является переносимость их на другие платформы (например UNIX). Графический вывод на экран для этого типа приложений невозможен. Приложение может работать в оконном и полноэкранном режиме (для перехода используется комбинация клаыиш ALT + ENTER)
Fortran Standard Graphics or QwuckWin Application
Приложения этого типа допускают графический интерфейс и различаются тем, что в первом случае мы имеем однооконный интерфейс (SDI), а QwuckWin – многооконный (MDI). Оба проекта позволяют использовать диалоговые окна (dialogs) и управляющие элементы (controls). Этот вид приложения предполагает использование МЕНЮ и некоторых стандартных диалоговых окон. Проект QwuckWin Application обеспечивают полноценный интерфейс для большинства приложений при минимальных затратах на обучение и разработку.
Для приложений со сложным пользовательским интерфейсом используется
. Fortran Windows Application
Этот тип проекта позволяет вызовы процедур API Windows непосредственно из программы, обеспечивая больший набор функций, чем QwuckWin. Разработка приложений Windows Application требует многократно больше времени и квалификации. По этой причине этот вид проекта не находит широкого применения.
Большинство, а точнее почти все изданные на русском языке книги практически не уделяют внимания задаче разработке оконного пользовательского интерфейса . Исключение составляет “Visual Fortran: новые возможности”. издание: Диалог-МИФИ, 1999 г. автор: О. В. Бартеньев. Эта книга полезна для изучения и других ресурсов QwuckWin Application. Найти ее можно в интернете.
Постановка задачи.
Рассмотрим приложение, которое выполняет заданную операцию(+, *, /) над двумя операндами с плавающей точкой. Если мы применим проект Fortran Console Application, вполне подходит приведенная ниже программа.
Программа 1.
!****************************************************************************
! A_op_B.f90
!
! FUNCTIONS: A_op_B - Entry point of console application.
!
!****************************************************************************
program A_op_B
implicit none
real :: firstOper, SecondOper, res
integer :: oper
do
write(*,"(a,$)") "Input two numbers: "
read(*,*) firstOper, SecondOper
write(*,"(a,$)") "Input 1 -> to ADD, 2 -> to MULTIPLY, 3 -> to DIVIDE, 0 -> to EXIT "
read(*,*) oper
select case(oper)
case (0)
write(*,*) "Good Bye!"
stop
case(1)
res = firstOper + SecondOper
write(*,"(f7.2, ' + ', f7.2, ' = ', f8.2)") firstOper, SecondOper, res
case(2)
res = firstOper * SecondOper
write(*,"(f7.2, ' * ', f7.2, ' = ', e9.3)") firstOper, SecondOper, res
case(3)
res = firstOper / SecondOper
write(*,"(f7.2, ' / ', f7.2, ' = ', e9.3)") firstOper, SecondOper, res
case default
write(*,*) "Bed Select. Good Bye!"
write(*,*) "Program termination with error code = 1"
stop 1
end select
enddo
write(*,*) "Good Bye!"
end program A_op_B
Не будем говорить о достоинствах и недостатках нашего консольного приложения, а посмотрим, как это приложение может выглядеть в проекте QwickWin:
Рис 1.
Очевидно, что затраты на разработку такого приложения будут больше. Но это уже качественно другая задача. Windows приложения работают не так, как консольные. Они работают по событиям. Для того чтобы выполнить операцию необходимо нажать кнопку “OK”. Нажатие кнопки это событие (event) щелчок (click).
Windows приложения проектируются в три этапа:
Сначала проектируется интерфейс (рис. 1). После прорисовки на бумаге применяется режим проектирования средствами редактора ресурсов VS. Диалоговое окно создается так1): Insert -> Resource-> Dialog->New. Fortran создает диалоговое окно с двумя кнопками (OK и Cancel) и переходит в режим проектирования интерфейса (Design Time). Путем перетаскивания помещаем управляющие элементы (они расположены в окне “controls”) на диалог. Ряд свойств (properties) объектов управления устанавливаются на этапе проектирования. Имея макет на бумаге, этот этап не представляет большого труда и может быть освоено самостоятельно.
Поскольку Windows приложение работает по событиям, необходимо подготовить диалоговое окно к работе. Это делается в главной программе (program main …….end). В главной программе производится начальные установки управляющих элементов (если это необходимо) выполняется подписка на события и отображается первое диалоговое окно. Подписка на события это связывание события с процедурой отклика на событие (CALL BACK PROCEDURE).
Заключительный этап состоит из разработки процедур отклика, содержащих в том числе алгоритмы предметной области.
Самое время реализовать проект задачи, решенной ранее в консольном проекте. Но теперь интерфейс будет соответствовать рис. 1.