Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Рабочее состояние окна




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

Модель рубильника

 

//========================================== 12 ==========

// Изображение включенного состояния рубильника. Его первоначальное

// состояние выключено. Когда это изображение видимо, его при помощи

// указателя мыши можно перемещать в пределах экрана.

Define image img of F property metric 6, top 436, left 546,;

datasource 'file key.gif', width 160, height 94,;

OnLeftMouseDown {; SendMessage(F.img.Hwnd, 0x00A1, 2, 0); },;

borderstyle 3, visible false, onmousemove rubilnik

 

//=============================

procedure rubilnik (iflag, colcol, rowrow)

if colcol > 552.and. colcol < 741.and. rowrow > 453.and. rowrow < 554

F.mousepointer= 13

else; F.mousepointer= 0

endif

return

 

После включения рубильника рабочее окно примет следующий вид. Здесь возможен вариант изменения значений сопротивлений двух реостатов. При этом их текущие значения будут высвечиваться ниже соответствующих зображений. При этом также будут обновляться значения показателей измерительных приборов. Напомним, что значений измерительных приборов не соответствуют реальным, т.к. здесь не учтены реальне расчетные формулы. Соответствующие изменения можно призвести самостоятельно во время работы и модификации учебного програмного модуля.

 

 

Вопросы для самопроверки:

 

1. Что произойдет, если заменить одно из значений вызываемого параметра:

//========================================== 12 ==========

// Изображение включенного состояния рубильника. Его первоначальное

// состояние выключено. Когда это изображение видимо, его при помощи

// указателя мыши можно перемещать в пределах экрана.

Define image img of F property metric 6, top 436, left 546,;

datasource 'file key.gif', width 160, height 94,;

OnLeftMouseDown {; SendMessage(F.img.Hwnd, 0x00A1, 2, 0); },;

borderstyle 3, visible false, onmousemove rubilnik

Заменить на:

//========================================== 12 ==========

// Изображение включенного состояния рубильника. Его первоначальное

// состояние выключено. Когда это изображение видимо, его при помощи

// указателя мыши можно перемещать в пределах экрана.

Define image img of F property metric 6, top 436, left 546,;

datasource 'file key.gif', width 160, height 94,;

OnLeftMouseDown {; SendMessage(F.Hwnd, 0x00A1, 2, 0); },;

borderstyle 3, visible false, onmousemove rubilnik

Ответ: Вместо перемещения изображения рубильника в пределах главного окна приложения будет перемещаться все главное окно.

2. Как заменить цвет выводимого значения тока в цепи с белого на красный?

//======================================= 6 ==========

// Показания амперметра

Define text tx_1 of F property metric 6, top 456, left 64,;

height 27, width 120,;

borderstyle 3,; && отсутствие границы объекта

fontsize 18,; && размер шрифта

fontbold true,; && шрифт утолщенный

text " ",; && первоначально текста нет

transparent true,; && текст со свойством прозрачности

colornormal "0xffffff" && цвет текста - белый

 

 

Ответ: Заменить фрагмент colornormal "0xffffff" && цвет текста – белый

на colornormal "0x0000ff" && цвет текста – красный

 

3. Что произойдет, если в приведенням ниже фрагменте удалить выделенный оператор программы?

 

//================================================

procedure change_sdd

// Метод для левого реостата

// При каждом изменении значения сопротивления обновляется

// визуализация значения текущего сопротивления.

f.tx_2R.text = ltrim(rtrim(str((f.sdd.value),7,3))) + ' ом'

// Если рубильник выключен - тока в цепи нет, нет и показаний

// амперметра и вольтметра

if vkl_otkl = false

f.tx_1.text = ' '

f.tx_2.text = ' '

return -??????????????????????????

endif

// Обновление значений амперметра и вольтметра.

// Здесь эти показания рассчитываются случайным образом и

// изменение расчетных

// формул может быть обучаемыми произведено самостоятельно.

f.tx_1.text = ltrim(rtrim(str((f.sdd.value)*random(-0.3)*0.00010 *;

f.sds.value,7,3))) + ' A '

f.tx_2.text = ltrim(rtrim(str((f.sds.value)*random(-0.3)*0.0010 *;

f.sdd.value,7,3))) + ' V '

return

//=================================================

Ответ: При изменении значения сопротивления левого реостата будет изменяться значение показателя амперметра, что конечно не соответствует действительности. При выключенном рубильнике тока в цепи нет.

 

 

 

4. Какие визуальные изменения произойдут при запуске программной модели, если главное окно приложения будет иметь следующее описание?

//======================================= 1 ============

Define Form F Property metric 6, top 20, left 100,;

width 800, height 600,;

mdi false,; && форма не обладает свойством MDI

minimize false,; && Форма не может быть свернуто в иконку

maximize false,; && форма не может быть развернута на весь экран

escexit false,; && клавища ESC - отключена

text ' ',; && текст в строке заголовка окна отсутствует

sizeable false,; && форма не может изменять своих размеров

moveable true,; && форма не может перемещаться в пределах экрана

onmousemove rubilnik,; && метод при перемещении указателя мыши

onleftmouseup on_off && метод при нажатии или отпускании левой кнопки

//=======================================================

Ответ: Главное окно приложения будет иметь следующий вид. Здесь цвет фона окна принимает значение, заданное по умолчанию.

 

 

5. Какие визуальные изменения произойдут при запуске программной модели, если главное окно приложения будет иметь следующее описание?

//======================================= 1 ============

Define Form F Property metric 6, top 20, left 100,;

width 800, height 600,;

mdi false,; && форма не обладает свойством MDI

minimize false,; && Форма не может быть свернуто в иконку

maximize false,; && форма не может быть развернута на весь экран

escexit false,; && клавища ESC - отключена

text ' ',; && текст в строке заголовка окна отсутствует

sizeable false,; && форма не может изменять своих размеров

moveable true,; && форма не может перемещаться в пределах экрана

onmousemove rubilnik,; && метод при перемещении указателя мыши

onleftmouseup on_off,; && метод при отпускании левой кнопки

background “file univer.jpg”

Ответ: Скриншот ответа приведен ниже. Здесь графическое изображение – файл с именем “univer.jpg” имеет размеры 400 х 300 пикселей. Главное окно приложения имеет размеры 800 х 600. Поэтому, в качестве фона, изображение копируется в точности 4 раза. Это обусловлено правилами генерации главного окна, принятого в системах программирования WINDOWS.

Почему не видны текстове надписи “R1 - R2”, а видны лишь изображения слайдеров?

Потому, что эти символьные надписи имеют белый цвет и при их выводе на белом фоне мы их не видим.

 




Поделиться с друзьями:


Дата добавления: 2014-11-29; Просмотров: 295; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.027 сек.