
- •Программирование на языке lazarus
- •Варианты заданий
- •Порядок выполнения работы
- •1. Сохранение проекта.
- •2. Изменение заголовка Формы.
- •3. Размещение компонентов на Форме.
- •4. Написание процедуры обработки события создания Формы (FormCreate).
- •5. Написание процедуры обработки события нажатия кнопки Button1 (Button1Click).
- •6. Текст модуля zadanie1.
- •Interface
- •Implementation
- •Initialization
- •Порядок выполнения работы
- •1. Пояснения к вычислению суммы членов ряда
- •2. Размещение компонентов на Форме.
- •3. Текст модуля zadanie2.
- •Interface
- •Implementation
- •Initialization
- •Порядок выполнения работы
- •1. Размещение компонентов на Форме.
- •2. Создание процедур обработки событий.
- •3. Текст модуля unstr.
- •Interface
- •Implementation
- •Initialization
- •Программирование на языке lazarus
3. Текст модуля unstr.
unit zadanie3;
{$mode objfpc}{$H+}
Interface
uses
Classes, SysUtils, LResources, Forms, Controls, Graphics, Dialogs, StdCtrls,
Buttons;
type
{ TForm1 }
TForm1 = class(TForm)
BitBtn1: TBitBtn;
Edit1: TEdit;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
ListBox1: TListBox;
procedure Edit1KeyPress(Sender: TObject; var Key: char);
procedure FormActivate(Sender: TObject);
procedure ListBox1Click(Sender: TObject);
private
{ private declarations }
public
{ public declarations }
end;
var
Form1: TForm1;
Implementation
{ TForm1 }
// Обработка события активизации Формы
procedure TForm1.FormActivate(Sender: TObject);
begin
Edit1.SetFocus; // передача фокуса ввода Edit1
end;
// Обработка события ввода символов и нажатия клавиши Enter
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: char);
begin
if key=#13 then // если нажата клавиша Enter то
begin // строка из редактируемого текстового поля
ListBox1.Items.Add(Edit1.Text); // заносится в список выбора
Edit1.Text:=''; // очистка текстового поля
end;
end;
// Обработка события нажатия клавиши "мыши" в списке выбора
procedure TForm1.ListBox1Click(Sender: TObject);
var
st: string;
n,i,nst,ind: integer;
begin
n:=0; // n содержит количество слов
ind:=0;
nst:=ListBox1.ItemIndex; // определение номера выбранной строки
st:=ListBox1.Items[nst]; // st присваивается выбранная строка
for i:=1 to Length(st) do // просмотр всех символов строки
case ind of
0: if st[i]<>' ' then // если встретился символ
begin
ind:=1;
n:=n+1; // количество слов увеличивается на единицу
end;
1: if st[i]=' ' then // если встретился пробел
ind:=0;
end;
Label3.Caption:=IntToStr(n); // вывод количества слов в Label3
end;
Initialization
{$I zadanie3.lrs}
end.
ЛИТЕРАТУРА
Глинский Я.Н., Анохин В.Е., Ряжская В.А. Turbo Pascal 7.0 и Delphi/ учебное пособие. – 2-е изд., испр. и доп. – СПб: ДиаСофтЮП, 2003.
Гофман В.Э., Хомоненко А.Д. Delphi. Быстрый старт. – СПб.: БХВ-Петербург, 2003.
Сухарев М.В. Основы Delphi. Профессиональный подход. – СПб.: Наука и техника, 2004.
Фаронов В.В. Система программирования Delphi. – СПб.: БХВ-Петербург, 2005.
Фленов М.Е. Delphi 2005. Секреты программирования. – СПб.: Питер, 2006.
Программирование на языке lazarus
Методические указания к выполнению контрольных работ
по дисциплине «Системное программное обеспечение»
для студентов специальности 220201.65
заочной формы обучения
СОСТАВИЛИ: КАПРАЛОВА Ольга Альбертовна
стельмах Ирина Валентиновна
Рецензент Т.Н. Скоробогатова
Редактор Л.В. Максимова
Корректор А.М. Рогачева
Подписано в печать Формат 60х84 1/16
Бумага тип. Усл.печ.л. 1,75 Уч.- изд.л. 1,75
Тираж 100 экз. Заказ Бесплатно
Саратовский государственный технический университет
410054, г. Саратов, ул. Политехническая, 77
К