СДЕЛАЙТЕ СВОИ УРОКИ ЕЩЁ ЭФФЕКТИВНЕЕ, А ЖИЗНЬ СВОБОДНЕЕ

Благодаря готовым учебным материалам для работы в классе и дистанционно

Скидки до 50 % на комплекты
только до

Готовые ключевые этапы урока всегда будут у вас под рукой

Организационный момент

Проверка знаний

Объяснение материала

Закрепление изученного

Итоги урока

Практическая работа по теме "Таблица в DELPHI"

Категория: Информатика

Нажмите, чтобы узнать подробности

Обращаем внимание, что ширину столбцов таблицы можно задавать на этапе проектирования. Также не надо забывать включать режим редактирования таблицы (свойство goEditing). В противном случае, ячейки таблицы нельзя будет редактировать.

Просмотр содержимого документа
«Практическая работа по теме "Таблица в DELPHI"»

Таблица

Цель занятий: научиться отобразить табличные данные. Изучить основные возможности компонентов: StringGrid, UpDown.

Особенности изложения: для каждого занятия: вначале необходимо повторить теоретический материал предыдущего занятия (в форме опроса) (5 мин.) и объявить цели текущего занятия

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

Так же, как и свойства Caption и Text, свойство таблицы Cells (и по совместительству двухмерный массив) является типом String, так что для отображения в нём числовых данных, либо их считывания, нужно использовать функции преобразования типов.

Обратить внимание, что для задания каких-либо начальных параметров программы, существует событие формы OnCreate.



Пояснения:

unit Unit1;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, StdCtrls, ExtCtrls, ComCtrls, Grids;

type

TForm1 = class(TForm)

GridOut: TStringGrid;

UpDown: TUpDown;

Bevel1: TBevel;

Bevel2: TBevel;

editRow: TEdit;

Label1: TLabel;

ButtonRND: TButton;

ButtonCalk: TButton;

ButtonExit: TButton;

procedure ButtonExitClick(Sender: TObject);

procedure ButtonCalkClick(Sender: TObject);

procedure ButtonRNDClick(Sender: TObject);

procedure UpDownClick(Sender: TObject; Button: TUDBtnType);

procedure FormCreate(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.ButtonCalkClick(Sender: TObject);

var V,f:Integer;

begin

(* -- Заполнение всех строк второго столбца таблицы результатом вычисления функции --*)

// Задаём цикл от 1 до количества строк

For f:=1 to GridOut.RowCount do

if GridOut.Cells[0,f]'' then begin

//Проверяем, пустая ли строка?

//Получаем числовое значение аргумента из ячейки с номером строки f

V:= StrToInt ( GridOut.Cells[0,f] );

// Помещаем результат во второй столбец, в ячейку с номером строки f

GridOut.Cells[1,f]:=IntToStr( Sqr( V ) )

End

Else

// Если да, то выводим сообщение об ошибке

GridOut.Cells[1,f]:='Ошибочка';

end;


procedure TForm1.ButtonExitClick(Sender: TObject);

begin

// задание числа строк

GridOut.RowCount := UpDown.Position+1;

Form1.Close;

end;


procedure TForm1.ButtonRNDClick(Sender: TObject);

var f:Integer;

begin


// -- Заполнение всех строк первого столбца таблицы случайными числами --

For f:=1 to GridOut.RowCount do

// Заполняем первый столбец случайными числами от -10 до 10

GridOut.Cells[0,f] := IntToStr(Random(21)-10);


(* Вызываем процедуру OnClick кнопки "Вычислить" для вычисления значений функции*)

end;


procedure TForm1.FormCreate(Sender: TObject);

begin


// Задания заголовков в фиксированных областях таблицы

GridOut.Cells[0,0]:='x';

GridOut.Cells[1,0]:='y(x)=x^2';

// Активизация генератора случайных чисел

Randomize;

// Задание числа строк в однострочном редакторе (через счётчик)

UpDown.Position:=3;

// Задание числа строк в таблице через вызов событий OnClic на счётчике

UpDownClick(Sender, btNext);

end;

procedure TForm1.UpDownClick(Sender: TObject; Button: TUDBtnType);

begin

// Задание числа строк

GridOut.RowCount := UpDown.Position+1;

end;

end.