Студопедия — В окне текста программы после раздела implementation введите описание метода Refresh формы.
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

В окне текста программы после раздела implementation введите описание метода Refresh формы.






 

procedure TForm1.Refresh;

var i, j: integer; s: string;

Begin

Str (capital, s); Form1.Label6.Caption:= s+' долларов';

Str (year, s); Form1.Label5.Caption:= s+' год';

Str (profit, s); Form1.Label7.Caption:= s+' долларов';

Form1.Label8.Caption:='Введите сумму';

Form1.SpeedButton2.Enabled:=False;

Form1.SpeedButton1.Enabled:=False;

randomize;

r:=random(N); {Выбор инвестиционного климата r}

for i:=l to 3 do

for j:=l to 3 do

Begin

Str(P[r,j,i],s); Form1.StringGrid1.Cells[i,j]:=s+' центов';

end;

for i:=1 to 3 do

Begin

Str(Prob[r,i],s); Form1.StringGrid3.Cells[i,0]:=s+' %';

Form1.StringGrid2.Cells[0,i]:=";

End

end;

 

Строку procedure Refresh; вставьте в произвольном месте раздела type TForm1 = class(TForm)... в окне текста программы.

 

Запрограммируйте процедуру создания формы FormCreate.

Для этого дважды щелкните на форме и полученную заготовку процедуры FormCreate заполните следующим образом:

 

procedure TForm1.FormCreate(Sender: TObject);

Begin

capital:=1000;

year:=2000;

profit:=0;

Refresh;

StringGrid1.Cells[1,0]:='3pocтe евро';

StringGrid1.Cells[2,0]:='3pocтe йєна';

StringGrid1.Cells[3,0]:='3pocтe доллар';

StringGrid1.Cells[O,1l:='Hundai';

StringGrid1.Cells[0,2]:='Philips';

StringGild1.Cells[0,3]:='Bosh'i

StringGrid2.Cells[0,0]:='Инвестиции, $';

StringGrid3.Cells[0,0]:='Вероятности';

End;

 

Сохраните выполненную на данный момент работу в своей папке.

 

13. Запрограммируйте событие ввода данных в таблицу StringGrid2 так, чтобы в момент ввода денежных сумм в первую и вторую клеточку в третьей клеточке сразу отображался остаток капитала (поскольку каждый год бизнесмен инвестирует весь имеющийся капитал).

Активизируйте объект StringGrid2 и в окне Object Inspector откройте закладку Events этого объекта. На этой закладке вам предлагается выбрать событие объекта, для которой вы хотите описать последовательность действий - реакцию на событие. Выберите событие OnSetEditText (Если текст редактируется) и дважды щелкните в поле справа от нее. Откроется окно программы с заготовкой процедуры StringGrid2SetEditText. Заполните ее следующим образом:

 

procedure TForm1.StringGrid2SetEditText(Sender:TObject; ACol, ARow:Longint; const Value:string);

var i,code:integer; s:string;

Begin

for i:=0 to 1 do val(StringGrid2.Cells[0,i+1],money[i],code);

money[2]:=capital-money[0]-money[1]; {Вычисляем остаток капитала и инвестируем его в третье предприятие}

Str(money[2],s);

StringGrid2.Cells[0,3]:=s;

SpeedButton1.Enabled: =Тruе;

End;

 

Замечание. Заготовки очевидных для каждого объекта событий-процедур можно вызвать, дважды нажимая на объекте, на макете формы, так, как это всегда делалось для кнопок. Для большинства объектов это событие - OnClick (Если нажать), в том числе и для StringGrid. Поэтому мы были вынуждены "вручную" выбрать нужный для нашего случая тип события - OnSetEditText.

 

Апустите созданную программу и исследуйте ее работу.

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

 

Продемонстрируйте созданную форму преподавателю. Закончите работу.

 

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

1. Информационную надпись "Прибыль (убыток) на конец года представляет" измените на "Прибыль на конец года представляет" или "Убыток на конец года представляет" в зависимости от того возрос или уменьшился капитал игрока в конце года в сравнении с начальным.

 

2. Обеспечьте вывод денежной суммы прибыли зеленым цветом, а убытка - красным.

 

3. Не дайте возможности игроку ввести отрицательные денежные суммы в таблицу инвестиций.

 

4. Вычисляйте и отображайте на форме все денежные суммы с точностью до цента.







Дата добавления: 2015-09-19; просмотров: 349. Нарушение авторских прав; Мы поможем в написании вашей работы!



Композиция из абстрактных геометрических фигур Данная композиция состоит из линий, штриховки, абстрактных геометрических форм...

Важнейшие способы обработки и анализа рядов динамики Не во всех случаях эмпирические данные рядов динамики позволяют определить тенденцию изменения явления во времени...

ТЕОРЕТИЧЕСКАЯ МЕХАНИКА Статика является частью теоретической механики, изучающей условия, при ко­торых тело находится под действием заданной системы сил...

Теория усилителей. Схема Основная масса современных аналоговых и аналого-цифровых электронных устройств выполняется на специализированных микросхемах...

СПИД: морально-этические проблемы Среди тысяч заболеваний совершенно особое, даже исключительное, место занимает ВИЧ-инфекция...

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

Тактика действий нарядов полиции по предупреждению и пресечению правонарушений при проведении массовых мероприятий К особенностям проведения массовых мероприятий и факторам, влияющим на охрану общественного порядка и обеспечение общественной безопасности, можно отнести значительное количество субъектов, принимающих участие в их подготовке и проведении...

Билиодигестивные анастомозы Показания для наложения билиодигестивных анастомозов: 1. нарушения проходимости терминального отдела холедоха при доброкачественной патологии (стенозы и стриктуры холедоха) 2. опухоли большого дуоденального сосочка...

Сосудистый шов (ручной Карреля, механический шов). Операции при ранениях крупных сосудов 1912 г., Каррель – впервые предложил методику сосудистого шва. Сосудистый шов применяется для восстановления магистрального кровотока при лечении...

Трамадол (Маброн, Плазадол, Трамал, Трамалин) Групповая принадлежность · Наркотический анальгетик со смешанным механизмом действия, агонист опиоидных рецепторов...

Studopedia.info - Студопедия - 2014-2024 год . (0.009 сек.) русская версия | украинская версия