13.08.2013 Views

?????????????? ?????? ? ????????? ?????????? ??????? ?????

?????????????? ?????? ? ????????? ?????????? ??????? ?????

?????????????? ?????? ? ????????? ?????????? ??????? ?????

SHOW MORE
SHOW LESS

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

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!