?????????????? ?????? ? ????????? ?????????? ??????? ?????
?????????????? ?????? ? ????????? ?????????? ??????? ?????
?????????????? ?????? ? ????????? ?????????? ??????? ?????
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Подпрограмма ввода данных.<br />
subroutine vvod<br />
! объявление модуля obmen с общими данными.<br />
use obmen<br />
! объявление символьных переменных с именами входного и выходного файлов<br />
! CFIL1 и CFIL2. Одновременно этим переменным присваиваются начальные<br />
! значения.<br />
character (len=80)::CFIL1=' ', CFIL2='a.txt'<br />
! объявление и ввод символьной переменной help для отображения текста, который<br />
! будет выведен в отдельное окно при нажатии кнопки Help<br />
character (len=50)::help=&<br />
'программа расчета переходного процесса в RLC-цепи'<br />
! объявление внешней подпрограммы с именем ROUTINE, в которой будет<br />
! обработана информация из входного файла с данными.<br />
external ROUTINE<br />
! установка окна ввода в центре экрана.<br />
CALL SWGOPT('center','position')<br />
! вывод строки при нажатии help.<br />
CALL SWGHLP (help)<br />
! инициализация основного окна с идентификационной переменной IP. Дочерние<br />
! виджеты будут располагаться горизонтально.<br />
CALL WGINI ('HORI', IP)<br />
! установка ширины виджетов.<br />
CALL SWGWTH (25)<br />
! установка в основном окне виджета c идентификатором ip1 с возможностью<br />
! вертикального расположения дочерних виджетов.<br />
CALL WGBAS(ip,'VERT',ip1)<br />
!установка высоты виджета рисунка в долях ширины виджета<br />
CALL SWGDRW(0.6)<br />
!установка новой ширины виджетов. Отрицательное число в параметре программы<br />
! указывает на то, что ширина устанавливается в процентах ширины экрана.<br />
CALL SWGWTH (-20)<br />
!установка в основном окне новый виджет c идентификатором ip2, с вертикального<br />
! расположения дочерних виджетов.<br />
CALL WGBAS(ip,'VERT',ip2)<br />
!объявление цикла do для ввода в виджетов с данными<br />
do i=1, kolpar<br />
! вывод виджетов с надписями и текстовых виджетов для исходными данными.<br />
! Для надписей используется ранее объявленный массив Labl(7). 70% ширины<br />
! виджетов будет отведено для ввода цифр, остальные 30% для надписей.<br />
CALL WGLTXT(IP1, labl(i), texts(i), 70, idtext(i))<br />
end do<br />
! выводит виджет с надписью для открытого файла.<br />
CALL WGLAB (IP2, 'открытый файл:', ID2)<br />
! выводит надпись в главное меню при развороте кнопки File. На кнопке будет<br />
! написано 'открыть файл'. После нажатия на эту кнопку появится окно с<br />
! предложением открыть файл. При этом будет указана маска *.txt для вводимых<br />
! файлов. Имя введенного файла и путь к нему будут сохранены в<br />
! переменной CFIL1. Имя и путь будут отображены в виджете с идентификатором<br />
! ID_FIL. Этот виджет будет расположен сразу под надписью 'открытый файл'.<br />
CALL WGFIL (IP2, 'открыть файл', CFIL1, '*.txt', ID_FIL)<br />
! вызов подпрограммы вторичного вызова с именем ROUTINE. П/программа<br />
ROUTINE<br />
150