




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、浙江大学远程教育学院数据库应用程序设计课程作业姓名: 学 号:年级:2016年春学习中心:作业第一章1.5 如何保存Delphi的项目?尝试自己动手创建一个项目,并保存。答:执行File|Save All菜单命令或单击工具栏中的Save All按钮便可保存,在保存时可以对工程文件和单元文件进行改名,但后缀名不能改。保存文件之后,单击工具中的Run按钮或按F9键,系统将开始编译、连接、运行该工程。1.7 尝试设计如图110所示的窗体。(图见教材P15页图110)图110答:设计界面:运行界面:第二章2.8设计如图25所示的界面。单击“按钮1”或“按钮2”时在标签上显示用户所执行的操作。单击“开启
2、/停用按钮”可控制“按钮1”和“按钮2”是否可用,单击“退出系统”按钮时,结束程序的运行。答:设计界面:运行界面: 代码:unit test;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;type TForm1 = class(TForm) showLabel: TLabel; btn1: TButton; /按钮1 btn2: TButton; /按钮2 ctlBtn: TButton; /开启停用按钮 exitBtn: TB
3、utton; /退出按钮 procedure btn1Click(Sender: TObject); procedure btn2Click(Sender: TObject); procedure exitBtnClick(Sender: TObject); procedure ctlBtnClick(Sender: TObject); private Private declarations public Public declarations end;var Form1: TForm1; ctlStatus:integer = 0; /控制按钮1和2的开启和关闭,0表示当前为开启,1表示关
4、闭implementation$R *.dfmprocedure TForm1.btn1Click(Sender: TObject);begin form1.showLabel.Caption := 您点击了按钮1;end;procedure TForm1.btn2Click(Sender: TObject);begin form1.showLabel.Caption := 您点击了按钮2;end;procedure TForm1.exitBtnClick(Sender: TObject);begin form1.Close;end;procedure TForm1.ctlBtnClick(S
5、ender: TObject);begin if ctlStatus = 0 then begin form1.btn1.Enabled := false; form1.btn2.Enabled := false; ctlStatus := 1; end else begin form1.btn1.Enabled := true; form1.btn2.Enabled := true; ctlStatus := 0; end;end;end.2.9 设计如图26所示的界面。当单击按钮时,可控制文本框中字体的颜色。图25图26答:设计界面:运行界面:代码:(按钮快捷键的设置方法为在字母前加&,如
6、&R,&G,&B)unit test;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;type TForm1 = class(TForm) Label1: TLabel; Edit1: TEdit; btnRed: TButton; btnGreen: TButton; btnBlue: TButton; procedure btnRedClick(Sender: TObject); procedure btnGreenClick
7、(Sender: TObject); procedure btnBlueClick(Sender: TObject); private Private declarations public Public declarations end;var Form1: TForm1;implementation$R *.dfmprocedure TForm1.btnRedClick(Sender: TObject);begin form1.Edit1.Font.Color := clred;end;procedure TForm1.btnGreenClick(Sender: TObject);begi
8、n form1.Edit1.Font.Color := clgreen;end;procedure TForm1.btnBlueClick(Sender: TObject);begin form1.Edit1.Font.Color := clblue;end;end.第三章3.8 下列实数中哪些是合法的,哪些是不合法的?不合法的请说明理由。(A)0.25E+02(B).25+2(C)25E+2(D)34.5(E).123(F)-3E-4答:(A)合法,即为25 (B)不合法,小数点前必须有数字,如表示为0.25+2 (C)合法,即为2500 (D)合法,即为34.5 (E)不合法,同(2) (
9、F)合法,即为-0.00033.12 数学式子sin30。写成Delphi表达式是下列哪个?(A)Sin30(B)Sin(30)(C)SIN(30。)(D)Sin(30*Pi/180)答:D,需要把角度转化为弧度第四章4.7 利用3个数字编辑框分别输入小时、分、秒,换算共有多少秒,然后使用标签输出。答:设计界面:运行界面:代码:unit test;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Spin;type TForm1
10、= class(TForm) SpinEdit1: TSpinEdit; Label1: TLabel; Label2: TLabel; SpinEdit2: TSpinEdit; Label3: TLabel; SpinEdit3: TSpinEdit; Label4: TLabel; procedure SpinEdit1Change(Sender: TObject); procedure SpinEdit2Change(Sender: TObject); procedure SpinEdit3Change(Sender: TObject); private Private declara
11、tions procedure CalculateTimeToSencond(timeKind:String; time:integer); public Public declarations end;var Form1: TForm1; hour: integer = 0; minute: integer = 0; second: integer = 0; tot:integer = 0;implementation$R *.dfmprocedure TForm1.CalculateTimeToSencond(timeKind:String; time:integer);begin if
12、timeKind = hh then hour := time else if timeKind = mi then minute := time else if timeKind = ss then second := time; tot := hour * 60 * 60 + minute * 60 + second; form1.Label4.Caption := 总共为 + IntToStr(tot) + 秒;end;procedure TForm1.SpinEdit1Change(Sender: TObject);begin Form1.CalculateTimeToSencond(
13、hh, StrToInt(Form1.SpinEdit1.Text);end;procedure TForm1.SpinEdit2Change(Sender: TObject);begin Form1.CalculateTimeToSencond(mi, StrToInt(Form1.SpinEdit2.Text);end;procedure TForm1.SpinEdit3Change(Sender: TObject);begin Form1.CalculateTimeToSencond(ss, StrToInt(Form1.SpinEdit3.Text);end;end.4.8 在编辑框中
14、输入一个实数,利用备注框输出该实数及其平方和平方根。答:设计界面:运行界面:代码:unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;type TForm1 = class(TForm) Edit1: TEdit; Label1: TLabel; Memo1: TMemo; Label2: TLabel; procedure Edit1Change(Sender: TObject); private Privat
15、e declarations public Public declarations end;var Form1: TForm1; num1 : Real; /原实数 num2 : Real; /实数平方 num3 : Real; /实数平方根implementation$R *.dfmprocedure TForm1.Edit1Change(Sender: TObject);begin if form1.Edit1.Text then begin num1 := StrToFloat(form1.Edit1.Text); num2 := Sqr(num1); num3 := Sqrt(num1
16、); form1.Memo1.Lines.Clear; form1.Memo1.Lines.Add(实数为 : + FloatToStr(num1); form1.Memo1.Lines.Add(平方为 : + FloatToStr(num2); form1.Memo1.Lines.Add(平方根为 : + FloatToStr(num3); end;end;end.第五章5.11 任意给定3个实数,按照从大到小的顺序依次输出这3个数。答:设计界面:运行界面:代码:unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, C
17、lasses, Graphics, Controls, Forms, Dialogs, StdCtrls;type TForm1 = class(TForm) num1Edit: TEdit; Label1: TLabel; Label2: TLabel; resultLabel: TLabel; num2Edit: TEdit; num3Edit: TEdit; procedure num1EditChange(Sender: TObject); procedure num2EditChange(Sender: TObject); procedure num3EditChange(Sende
18、r: TObject); private Private declarations procedure CompareNumber(); public Public declarations end;var Form1: TForm1; num1 : Real; /数字1 num2 : Real; /数字2 num3 : Real; /数字3 compnum : Real; /比较时转换2数 outStr : String; /输出结果;implementation$R *.dfmprocedure TForm1.CompareNumber();begin if (trim(form1.num
19、1Edit.Text) ) And (trim(form1.num2Edit.Text) ) And (trim(form1.num3Edit.Text) ) then begin num1 := StrToFloat(form1.num1Edit.Text); num2 := StrToFloat(form1.num2Edit.Text); num3 := StrToFloat(form1.num3Edit.Text); if num2 num1 then begin compnum := num1; num1 := num2; num2 := compnum; end; if num3 n
20、um1 then begin compnum := num1; num1 := num3; num3 := compnum; end; if num3 num2 then begin compnum := num2; num2 := num3; num3 := compnum; end; outStr := FloatToStr(num1) + , + FloatToStr(num2) + , + FloatToStr(num3); form1.resultLabel.Caption := outStr; end;end;procedure TForm1.num1EditChange(Send
21、er: TObject);begin form1.CompareNumber;end;procedure TForm1.num2EditChange(Sender: TObject);begin form1.CompareNumber;end;procedure TForm1.num3EditChange(Sender: TObject);begin form1.CompareNumber;end;end.5.13 假设工资的增幅标准为:若基本工资大于等于1000元,增加工资20%;若小于1000元大于等于800元,则增加工资15%;若小于800元,则增加工资10%。请根据用户在文本框中输入的
22、基本工资,计算出增加后的工资。答:设计界面:=运行界面:代码:unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;type TForm1 = class(TForm) Label1: TLabel; Edit1: TEdit; Label2: TLabel; resultLabel: TLabel; procedure Edit1Change(Sender: TObject); private Private d
23、eclarations public Public declarations end;var Form1: TForm1; salary: Real; outSalary: Real;implementation$R *.dfmprocedure TForm1.Edit1Change(Sender: TObject);begin salary := StrToFloat(form1.Edit1.Text); if (salary = 1000) then outSalary := salary * (1 + 0.2) else if (salary = 800) then outSalary
24、:= salary * (1 + 0.15) else if (salary 800) then outSalary := salary * (1 + 0.1); form1.resultLabel.Caption := FloatToStr(outSalary);end;end.第六章6.5 设s=1X2X3XXn,求s不大于20000时最大的n。答:设计界面:运行界面:代码:unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs,
25、StdCtrls;type TForm1 = class(TForm) Label1: TLabel; Edit1: TEdit; Label2: TLabel; resultLabel: TLabel; procedure FormCreate(Sender: TObject); private Private declarations public Public declarations end;var Form1: TForm1; number, n, tot: Integer;implementation$R *.dfmprocedure TForm1.FormCreate(Sende
26、r: TObject);begin tot := 1; n := 0; number := StrToInt(form1.Edit1.Text); While tot = number do begin n := n + 1; tot := tot * n; end; form1.resultLabel.Caption := IntToStr(n-1);end;end.6.10 在标签上输出100200之间的所有的奇数,其中3的倍数除外。答:设计界面:运行界面:代码:unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants,
27、Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;type TForm1 = class(TForm) resultLabel: TLabel; procedure FormCreate(Sender: TObject); private Private declarations public Public declarations end;var Form1: TForm1; number, i: Integer; outStr: String;implementation$R *.dfmprocedure TForm1.FormCr
28、eate(Sender: TObject);begin for i:= 100 to 200 do begin if i mod 2 0 then if i mod 3 0 then outStr := outStr + + IntToStr(i); form1.resultLabel.Caption := outStr; end;end;end.第七章7.4 求1200这200个数的和,当和大于10000时结束计算。(要求使用转向语句)答:设计界面:运行界面:代码:unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants,
29、Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;type TForm1 = class(TForm) Label1: TLabel; procedure FormCreate(Sender: TObject); private Private declarations public Public declarations end;var Form1: TForm1; sum, n : integer;implementation$R *.dfmprocedure TForm1.FormCreate(Sender: TObject);b
30、egin sum := 0; n := 0; repeat n := n + 1; sum := sum + n; if (sum 10000) then break; until n = 200; form1.Label1.Caption := 总和为 + IntToStr(sum);end;end.第八章8.8 编写函数,输出100500之间所有能同时被3和13整除的数。答:设计界面:运行界面:代码:unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, For
31、ms, Dialogs, StdCtrls;type TForm1 = class(TForm) Label1: TLabel; procedure FormCreate(Sender: TObject); private Private declarations Function checkNum(num:integer):boolean; public Public declarations end;var Form1: TForm1;implementation$R *.dfmFunction TForm1.checkNum(num:integer):boolean; var n :bo
32、olean;begin if (num mod 3 = 0) And (num mod 13 = 0) then n := true else n := false; result := n;end;procedure TForm1.FormCreate(Sender: TObject); var i : integer; var out : string;begin for i := 100 to 500 do begin if checkNum(i) then out := out + + IntToStr(i); end; form1.Label1.Caption := out;end;
33、end.第九章9.2 打开对话框组件和打开图片对话框组件有什么异同点?答:两者都会打开一个对话框用于选择电脑本地上的文件 不同的是前者可以选择全部类型的文件,而后者只可以选择图片类型的文件,并且可以预览图片第十章10.7 菜单命令项与工具栏按钮的单击事件中的代码是否可以关联?如何关联?答:将工具栏按钮ToolButton的Style属性设置为tbsDropDown,然后在MenuItem属性中选择对应的菜单项即可第十一章11.4 调用子窗体的close方法时是否可关闭该子窗体?若不能,需要怎么做?答:调用close方法只能最小化窗口,如果要真正关闭,需要调用free方法第十二章12.3 使用红
34、色的画笔在窗体中绘制一个半径为5的圆,并且用黄色来填充圆的内部。答:设计界面:运行界面:代码:unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs;type TForm1 = class(TForm) procedure FormPaint(Sender: TObject); private Private declarations public Public declarations end;var Form1: TForm1;im
35、plementation$R *.dfmprocedure TForm1.FormPaint(Sender: TObject);var r, x, y:integer;begin r := 5; Canvas.Pen.Color := clred; Canvas.Brush.Color := clyellow; Canvas.Ellipse(0, 0, r*2, r*2);end;end.第十三章13.3 打开一个文本文件有几种方法?区别是什么?答:有3种打开文件的方法:(1) Reset过程以只读方式打开一个文件。(2) Rewrite过程创建并打开文件,对于一个已经存在的文件,此操作将使文
36、件被覆盖。(3) Append过程以追加方式打开文件,并向已经存在的文本文件中追加文本。第十四章14.4 使用Database DeskTop设计如表145所示的数据表,并创建简单的应用程序完成数据的浏览和编辑功能。表145 数据表字段设置说明字段名类型长度说明Id字符型4产品编号Name字符型20产品名称Price数值型产品单价Count短整型产品库存量答:设计界面:(数据库设计)(界面设计)运行界面:14.6 使用数据库软件(如Sql Server2000)创建如表146所示的数据表,并开发一个学生档案管理系统,完成学生基本信息的添加、删除、修改等。同时,可以按照学生的学号、姓名等进行数据
37、的查询。最后,将学生的基本信息以报表的方式输出。表146 数据表字段设置说明字段名类型长度说明Id字符型8学号Name字符型8姓名Sex字符型2性别Birthday日期型4出生日期Address字符型50家庭住址答:(1)使用的数据库软件为Sql Server 2008,依据题目设计的数据表结构为表名为Students(2)本系统包含5个Form,分别为FormMain主界面,FormTable信息录入查询界面,FormReport学生信息报表界面,FormHelp系统帮助界面,FormAbout系统关于界面(3)各Form详细内容:A:FormMain设计界面:运行界面:代码:unit Un
38、it2;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, Menus, StdCtrls, Unit3, Unit1, Unit4, Unit5;type TMainForm = class(TForm) MainMenu1: TMainMenu; N1: TMenuItem; N2: TMenuItem; N4: TMenuItem; N5: TMenuItem; N6: TMenuItem; N7: TMenuItem; N8: TMenuIte
39、m; Label1: TLabel; Label2: TLabel; Label3: TLabel; procedure N8Click(Sender: TObject); procedure N5Click(Sender: TObject); procedure N2Click(Sender: TObject); procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean); procedure N4Click(Sender: TObject); procedure N7Click(Sender: TObject); pri
40、vate procedure closeApp; public Public declarations end;var MainForm: TMainForm;implementation$R *.dfmprocedure TMainForm.N8Click(Sender: TObject);begin formAbout.Show;end;procedure TMainForm.N5Click(Sender: TObject);begin closeApp;end;procedure TMainForm.N2Click(Sender: TObject);var child:TFormTabl
41、e;begin child := TFormTable.Create(Application); child.Show;end;procedure TMainForm.closeApp;begin if messagedlg(您确定要退出本系统了吗?,mtconfirmation,mbyes,mbno,0) = mryes then Application.Terminateend;procedure TMainForm.FormCloseQuery(Sender: TObject; var CanClose: Boolean);begin if messagedlg(您确定要退出本系统了吗?
42、,mtconfirmation,mbyes,mbno,0) = mryes then CanClose := true else CanClose := false;end;procedure TMainForm.N4Click(Sender: TObject);var child:TFormReport;begin child := TFormReport.Create(Application); child.Show;end;procedure TMainForm.N7Click(Sender: TObject);begin formHelp.Show;end;end.B:FormTabl
43、e设计界面:运行界面:代码:unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, Grids, DBGrids, DB, ADODB, ComCtrls, StdCtrls, ToolWin, ImgList;type TFormTable = class(TForm) ADOConnection1: TADOConnection; DataSource1: TDataSource; DBGrid1: TDBGrid; ToolBa
44、r1: TToolBar; TBAdd: TToolButton; Editname: TEdit; Label1: TLabel; Label2: TLabel; Label3: TLabel; Editaddress: TEdit; Label4: TLabel; Editid: TEdit; Label5: TLabel; Label6: TLabel; ComboBoxsex: TComboBox; DateBirthday: TDateTimePicker; TBUpdate: TToolButton; TBDelete: TToolButton; TBSelect: TToolBu
45、tton; TBCommit: TToolButton; LabelMode: TLabel; ToolButton6: TToolButton; Label8: TLabel; ADOQuery1: TADOQuery; DataSource2: TDataSource; ADOTable1: TADOTable; ImageList1: TImageList; procedure TBAddClick(Sender: TObject); procedure TBUpdateClick(Sender: TObject); procedure TBDeleteClick(Sender: TOb
46、ject); procedure TBSelectClick(Sender: TObject); procedure FormPaint(Sender: TObject); procedure TBCommitClick(Sender: TObject); procedure DBGrid1DblClick(Sender: TObject); private public Public declarations end;var FormTable: TFormTable; TBStatus : integer; /模式类型,0-查询,1-新增,2-修改,3-删除 SelMode : integ
47、er; /第一次按查询按钮进入查询模式-1,再按一次执行查询-2,其他情况下为-0implementation$R *.dfmprocedure TFormTable.TBAddClick(Sender: TObject);var maxid : integer;var date : string;begin TBStatus := 1; Editid.Enabled := false; Editname.Enabled := true; Comboboxsex.Enabled := true; DateBirthday.Enabled := true; Editaddress.Enabled
48、 := true; Editid.Text := ; Editname.Text := ; SelMode := 0; LabelMode.Caption := 新增模式; DBGrid1.DataSource := DataSource1; date := FormatDateTime(yymm, now); With FormTable.ADOQuery1 do begin ADOQuery1.Close; ADOQuery1.SQL.Clear; ADOQuery1.SQL.Add(select max(substring(Id,6,3) maxid from Students where substring(Id,2,4)= + date); ADOQuery1.Open; if (ADOQuery1.RecordCount = 0) then Editid.Text := S +
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 文化娱乐产业政策影响与经纪人应对措施考核试卷
- 水产品冷冻加工技术培训与人才培养考核试卷
- 厨房电器市场调查与分析考核试卷
- 英语三年级上册人教版三年级英语上册recycle1第三课时模板-英语
- 影视动画渲染节点租赁与高速存储服务合同
- 独家技术培训补充协议
- 演员代言产品售后服务责任补充协议
- 炼钢炉智能温控系统租赁与生产设备升级服务协议
- 网络文学作品改编为影视作品独家授权合同
- 物业公司安保人员智能设备操作全职聘用合同
- 多模态交互反馈机制
- 部编版小学道德与法治三年级下册第8课《大家的“朋友”》课件
- DL∕T 523-2017 化学清洗缓蚀剂应用性能评价指标及试验方法
- 中俄东线天然气管道工程(永清-上海)环境影响报告书
- 关爱生命-急救与自救技能智慧树知到期末考试答案章节答案2024年上海交通大学医学院
- 2023年丹阳市妇幼保健院(第二人民医院)招聘考试真题及答案
- 中医培训课件:《中药热奄包技术》
- 五年级语文下册第八单元【教材解读】
- 数字贸易学 课件 第3章 消费互联网、产业互联网与工业互联网
- 第11课+宋元时期的经济、科技与文化【中职专用】《中国历史》(高教版2023基础模块)
- JTG D60-2015 公路桥涵设计通用规范
评论
0/150
提交评论