Delphi实验.docx

上传人:b****1 文档编号:10515484 上传时间:2023-05-26 格式:DOCX 页数:16 大小:425.75KB
下载 相关 举报
Delphi实验.docx_第1页
第1页 / 共16页
Delphi实验.docx_第2页
第2页 / 共16页
Delphi实验.docx_第3页
第3页 / 共16页
Delphi实验.docx_第4页
第4页 / 共16页
Delphi实验.docx_第5页
第5页 / 共16页
Delphi实验.docx_第6页
第6页 / 共16页
Delphi实验.docx_第7页
第7页 / 共16页
Delphi实验.docx_第8页
第8页 / 共16页
Delphi实验.docx_第9页
第9页 / 共16页
Delphi实验.docx_第10页
第10页 / 共16页
Delphi实验.docx_第11页
第11页 / 共16页
Delphi实验.docx_第12页
第12页 / 共16页
Delphi实验.docx_第13页
第13页 / 共16页
Delphi实验.docx_第14页
第14页 / 共16页
Delphi实验.docx_第15页
第15页 / 共16页
Delphi实验.docx_第16页
第16页 / 共16页
亲,该文档总共16页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

Delphi实验.docx

《Delphi实验.docx》由会员分享,可在线阅读,更多相关《Delphi实验.docx(16页珍藏版)》请在冰点文库上搜索。

Delphi实验.docx

Delphi实验

一·实验目标

1、内容:

键鼠、多媒体编程及DLL创建和使用

2、要求:

掌握键盘鼠标编程常用事件;掌握DLL编程方法。

二·实验内容

实验一

1、实验内容:

关于鼠标拖动操作的验证性实验:

教材158页例6.3

2、实验结果:

运行代码(如图1)

图1

将输入文本拖至下方(如图2)

图2

3、核心代码:

procedureTForm1.Edit1MouseDown(Sender:

TObject;Button:

TMouseButton;

Shift:

TShiftState;X,Y:

Integer);

begin

ifButton=mbLeftthen

(SenderAsTEdit).BeginDrag(False);

end;

procedureTForm1.Memo1DragDrop(Sender,Source:

TObject;X,Y:

Integer);

begin

if(SenderIsTmemo)and(SourceIsTedit)then

(SenderAsTmemo).Lines.Add((SourceAsTEdit).Text);

end;

procedureTForm1.Memo1DragOver(Sender,Source:

TObject;X,Y:

Integer;

State:

TDragState;varAccept:

Boolean);

begin

begin

ifSourceIsTeditthen

Accept:

=True;

end;

end;

实验二

1、实验内容:

完成下面截图关于图形组件以及画笔画刷使用的程序,可参考教材176页例7.3

2、运行结果

如图3

图3

3、核心代码

procedureTForm1.FormCreate(Sender:

TObject);

begin

pen:

=1;

penbrush:

=true;

SetLength(p,1);

end;

procedureTForm1.N1Click(Sender:

TObject);

begin

ifopendialog1.Executethen

begin

end;

end;

procedureTForm1.N2Click(Sender:

TObject);

begin

ifsavedialog1.Executethen

begin

end;

end;

procedureTForm1.PaintBox1MouseDown(Sender:

TObject;Button:

TMouseButton;

Shift:

TShiftState;X,Y:

Integer);

begin

firstp.X:

=X;

firstp.Y:

=y;

p:

=nil;

SetLength(p,1);

p[0].X:

=X;

p[0].Y:

=Y;

SetLength(p,length(p)+1);

end;

procedureTForm1.PaintBox1MouseMove(Sender:

TObject;Shift:

TShiftState;X,

Y:

Integer);

begin

p[high(p)].X:

=X;

p[high(p)].Y:

=Y;

SetLength(p,length(p)+1);

end;

procedureTForm1.PaintBox1MouseUp(Sender:

TObject;Button:

TMouseButton;

Shift:

TShiftState;X,Y:

Integer);

begin

if(pen=1)then//画笔

begin

penbrush:

=true;

p[high(p)].X:

=X;

p[high(p)].Y:

=Y;

PaintBox1.Canvas.Polyline(p);

end;

if(pen=2)then//直线

begin

PaintBox1.Canvas.MoveTo(firstp.X,firstp.Y);

PaintBox1.Canvas.LineTo(X,Y);

end;

if(pen=3)then//矩形

begin

PaintBox1.Canvas.rectangle(firstp.X,firstp.Y,X,Y);

end;

if(pen=4)then//圆形

begin

PaintBox1.Canvas.ellipse(firstp.X,firstp.Y,X,Y);

end;

if(pen=5)then//圆角矩形

begin

PaintBox1.Canvas.roundrect(firstp.X,firstp.Y,X,Y,10,10);

end;

end;

procedureTForm1.Button10Click(Sender:

TObject);//修改颜色

begin

ifColorDialog1.Executethen

begin

PaintBox1.Canvas.Pen.Color:

=ColorDialog1.Color

end

else

begin

PaintBox1.Canvas.Pen.Color:

=clBlack;

end;

end;

procedureTForm1.Button11Click(Sender:

TObject);

begin

PaintBox1.Canvas.Brush.Style:

=bsSolid;

end;

procedureTForm1.Button13Click(Sender:

TObject);

begin

PaintBox1.Canvas.Brush.Style:

=bsBDiagonal;

end;

procedureTForm1.Button14Click(Sender:

TObject);

begin

PaintBox1.Canvas.Brush.Style:

=bsFDiagonal;

end;

procedureTForm1.Button15Click(Sender:

TObject);

begin

PaintBox1.Canvas.Brush.Style:

=bsCross;

end;

procedureTForm1.Button16Click(Sender:

TObject);

begin

PaintBox1.Canvas.Brush.Style:

=bsDiagCross;

end;

procedureTForm1.Button19Click(Sender:

TObject);//修改填充色

begin

ifColorDialog1.Executethen

begin

PaintBox1.Canvas.Brush.Color:

=ColorDialog1.Color

end

else

begin

PaintBox1.Canvas.Brush.Color:

=clBlack;

end;

end;

procedureTForm1.Button1Click(Sender:

TObject);//line

begin

pen:

=2;

//showmessage(inttostr(pen));

end;

procedureTForm1.Button2Click(Sender:

TObject);//矩形

begin

pen:

=3;

end;

procedureTForm1.Button3Click(Sender:

TObject);//圆形

begin

pen:

=4;

end;

procedureTForm1.Button4Click(Sender:

TObject);//圆角矩形

begin

pen:

=5;

end;

procedureTForm1.Button5Click(Sender:

TObject);//画笔

begin

pen:

=1;

end;

procedureTForm1.Button6Click(Sender:

TObject);

begin

penbrush:

=false;

pen:

=6;

PaintBox1.Canvas.Brush.Style:

=bsSolid;

PaintBox1.Canvas.Brush.Color:

=clBlack;

end;

procedureTForm1.Button7Click(Sender:

TObject);//实线

begin

PaintBox1.Canvas.Pen.Style:

=psSolid;

end;

procedureTForm1.Button8Click(Sender:

TObject);//虚线

begin

PaintBox1.Canvas.Pen.Style:

=psDash;

end;

procedureTForm1.Button9Click(Sender:

TObject);//点虚线

begin

PaintBox1.Canvas.Pen.Style:

=psDashDot;

end;

procedureTForm1.Edit1Change(Sender:

TObject);//修改粗细

begin

PaintBox1.Canvas.Pen.Width:

=strtoint(Edit1.text);

end;

实验三

1、实验内容:

媒体播放器组件的使用:

教材189页例7.10

2、实验结果:

运行代码(如图4)

图4

点击打开按钮,选择示例视频(如图5)

图5

点击播放(如图6)

图6

3、核心代码

procedureTForm1.Button1Click(Sender:

TObject);

begin

opendialog1.DefaultExt:

='AVT';

opendialog1.FileName:

='*.wmv';

ifopendialog1.Executethen

begin

mediaplayer1.FileName:

=opendialog1.FileName;

mediaplayer1.Open;

end;

end;

procedureTForm1.Button2Click(Sender:

TObject);

begin

mediaplayer1.Next;

end;

procedureTForm1.Button3Click(Sender:

TObject);

begin

mediaplayer1.Back;

end;

procedureTForm1.Button4Click(Sender:

TObject);

begin

mediaplayer1.Open;

mediaplayer1.Play;

end;

procedureTForm1.Button5Click(Sender:

TObject);

begin

ifbutton5.Caption='暂停'then

button5.Caption:

='恢复'

else

button5.Caption:

='暂停';

mediaplayer1.Pause;

end;

实验四

1、实验内容:

DLL文件的创建:

教材204页课后题8-5

2、核心代码

libraryProject1;

uses

SysUtils,Classes;

{$R*.res}

vari:

integer;flag:

boolean;

functionsushu(a:

integer):

boolean;stdcall;

begin

flag:

=true;

fori:

=2toado

begin

if(amodi=0)and(i<>a)then

begin

flag:

=false;

break;

end;

end;

result:

=flag;

end;

exports

sushu;

begin

end.

实验五

1、实验内容

DLL文件的静态调用和动态调用:

教材204页课后题8-5

2、实验结果

运行代码(如图7)

图7

输入数字,例3,点击静态(如图8),点击动态(如图9)

图8图9

输入数字,例4,点击静态(如图10),点击动态(如图11)

图10图11

3、核心代码:

implementation

{$R*.dfm}

functionsushu(a:

integer):

Boolean;stdcall;external'Project1.dll';

procedureTForm1.Button1Click(Sender:

TObject);

begin

ifsushu(strtoint(edit1.Text))then

edit1.Text:

='该数是素数!

'

else

edit1.Text:

='该数不是素数!

';

end;

 

Type

Tsushu=function(a:

integer):

Boolean;stdcall;

procedureTForm1.Button2Click(Sender:

TObject);

var

pfunc:

TFarProc;

hdl:

THAndle;

begin

hdl:

=loadlibrary('Project1.dll');

ifhdl>32then

begin

pfunc:

=getprocaddress(hdl,'sushu');

ifss(pfunc)(strtoint(edit1.Text))then

edit1.Text:

='该数是素数!

'

else

edit1.Text:

='该数不是素数!

';

end;

freelibrary(hdl);

end;

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高中教育 > 初中教育

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2