Автор работы: Пользователь скрыл имя, 04 Ноября 2011 в 08:14, отчет по практике
Исследовательские учреждения давно ищут пути увеличения эффективности труда и уровня профессионализма разработчиков программ, т.е. интеллектуальной собственности, которая имеет свой особый статус и свое правовое поле.
procedure Table1AfterScroll(DataSet: TDataSet);
procedure DBEdit3KeyPress(Sender: TObject; var Key: Char);
procedure DBNavigator1Click(Sender: TObject; Button: TNavigateBtn);
procedure Table1BeforeOpen(DataSet: TDataSet);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
BmpPath: string;
implementation
{$R *.DFM}
procedure TForm1.FormCreate(Sender: TObject);
begin
Table1.Active := True;
end;
procedure ShowFoto(foto: string);
begin
try
Form1.Image1.Picture.
Form1.Image1.Visible:=True;
except
on EFOpenError do
begin
MessageDlg('Ôàéë èëëþñòðàöèè '
mtInformation, [mbOk], 0);
end;
end;
end;
procedure TForm1.Table1AfterScroll(
begin
if form1.DBEdit3.Visible
then
begin
form1.DBEdit3.Visible := False;
form1.Label4.Visible:=False;
end;
if Form1.DBEdit3.Text <> ''
then ShowFoto(Form1.DBEdit3.Text)
else form1.Image1.Visible:=False;
end;
procedure TForm1.DBEdit3KeyPress(Sender: TObject; var Key: Char);
begin
if (key = #13) then
if Form1.DBEdit3.Text <> ''
then ShowFoto(Form1.DBEdit3.Text)
else form1.Image1.Visible:=False;
end;
procedure TForm1.DBNavigator1Click(
begin
case Button of
nbInsert: begin
Image1.Visible:=False;
DBEdit3.Visible:=True;
Label4.Visible:=True;
end;
nbEdit: begin
DBEdit3.Visible:=True;
Label4.Visible:=True;
end;
end;
end;
procedure TForm1.Table1BeforeOpen(
begin
BmpPath:=ExtractFilePath(
end;
end.
Перед тем как запустить программу сначала надо создать базу данных типа STANDARD (таблицу monuments.db ), затем – псевдоним Kostanay.Псевдоним можно создать при помощи SQL Explorer.
Напишите программу, используя которую можно подготовить и распечатать накладную.
Входные данные | Выводимые данные |
dpiX, dpiY : integer; | p: array[0..4] of integer; |
kx,ky: real; | x1,y1,x2,y2: integer; |
x1,y1,x2,y2: integer; |
Программа должна подготавливать и распечатывать накладную.
Edit1
Button2
Button1 Edit2
unit schet_;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Grids,
ExtCtrls;
type
TForm1 = class(TForm)
StringGrid1: TStringGrid;
Button1: TButton;
Button2: TButton;
Edit1: TEdit;
Edit2: TEdit;
procedure FormCreate(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
uses Printers;
procedure TForm1.FormCreate(Sender: TObject);
var
i: integer;
begin
with StringGrid1 do
begin
Cells[0,0] := ' ¹';
Cells[1,0] := ' Íàèìåíîâàíèå';
Cells[2,0] := ' Öåíà';
Cells[3,0] := ' Êîë-âî';
Cells[4,0] := ' Ñóììà';
for i:=1 to 10 do
Cells[0,i] := ' '+IntToStr(i);
end;
end;
procedure TForm1.Button2Click(Sender: TObject);
const
LEFT_MARGIN = 2;
TOP_MARGIN = 2;
var
dpiX, dpiY : integer;
kx,ky: real;
p: array[0..4] of integer;
x1,y1,x2,y2:
integer;
px,py: integer;
i,j: integer;
begin
dpiX :=
GetDeviceCaps(Printer.handle,
dpiY :=
GetDeviceCaps(Printer.handle,
kx := dpiX / Screen.PixelsPerInch;
ky := dpiY /
Screen.PixelsPerInch;
px := Round(LEFT_MARGIN / 2.54 * dpiX);
py := Round(TOP_MARGIN
/ 2.54 * dpiY);
p[0] := px;
for i:=1 to 4 do
begin
p[i] := p[i-1] + Round(StringGrid1.ColWidths[i-
end;
with Printer do
begin
BeginDoc;
Canvas.Font.Name := Edit1.Font.Name;
Canvas.Font.Size := Edit1.Font.Size;
Canvas.TextOut(px,py,Edit1.
py := py+ Round(Edit1.Font.Size * 2 * ky);
x1 := px; y1 := py;
Canvas.Font.Name := StringGrid1.Font.Name;
Canvas.Font.Size := StringGrid1.Font.Size;
x2 := p[4] + Round(StringGrid1.ColWidths[4]
y2 := py +
Round(StringGrid1.RowCount * StringGrid1.RowHeights[1] * ky);
for j:=0 to StringGrid1.RowCount do
begin
for i:=0 to StringGrid1.ColCount do
begin
Canvas.TextOut(P[i],py,
Canvas.MoveTo(p[0],py);
Canvas.LineTo(x2,py);
end;
py:=py+ Round(StringGrid1.RowHeights[
end;
for i:=0 to StringGrid1.ColCount -1 do
begin
Canvas.MoveTo(p[i],y1);
Canvas.LineTo(p[i],y2);
end;
Canvas.MoveTo(x2,y1);
Canvas.LineTo(x2,y2);
EndDoc;
end;
end;
end.
Запустите
программу, заполните
2.11.1. Условие задачи
Написать
программу, тестировщик на
2.11.2. Таблица реквизитов
Входные данные | Выводимые данные |
f:TextFile; | level:array[1..N_LEV] of integer; |
fn:string; | mes:array[1..N_LEV] of string; |
score:array[1..N_ANS] of integer; | |
summa:integer; |
2.11.3. Требования к программе
Тест знания
учащихся и вывод оценки.
unit tester_;
interface
uses
SysUtils, WinTypes, WinProcs, Messages, Classes, Graphics, Controls,
Forms, Dialogs, StdCtrls, ExtCtrls,
jpeg;
type
TForm1 = class(TForm)
Label5: TLabel;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
RadioButton1: TRadioButton;
RadioButton2: TRadioButton;
RadioButton3: TRadioButton;
RadioButton4: TRadioButton;
Image1: TImage;
Button1: TButton;
Panel1: TPanel;
RadioButton5:
TRadioButton;
procedure FormActivate(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure RadioButtonClick(Sender: TObject);
procedure Info;
procedure VoprosToScr;
procedure ShowPicture;
procedure ResetForm;
procedure Itog;
procedure
FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
const
N_LEV=4;
N_ANS=4;