上一题下一题
跳转到
 
 
  世界如此多姿,发展如此迅速,窥一斑未必还能知全豹。但正如万花筒一样,每一个管窥都色彩斑斓。  
 
 
  知识通道 | 学习首页 | 教师首页 | PK首页 | 知识创造首页 | 企业首页 | 登录
 
本文对应知识领域
DELPHI语言编程基础(5)
作者:未知 申领版权
2010年12月12日 共有 1823 次访问 【添加到收藏夹】 【我要附加题目
受欢迎度:

    实 验
    
    
    3.10.1 设计由按钮类组件实现的功能窗体
    
    【实验目的】
    熟悉 Delphi 中按钮型组件的使用,锻炼代码编写。
    【实验要求】 按要求设计一窗体,并实现其功能。
    【示范模仿】 设计一点菜窗口,用户只能在“龙虾、青蟹、鲍鱼”中选择一项,对佐料“酱油、芥末、 醋”任意选择哪些项,提交后生成选择内容的文本。
    (1)  进入Delphi开发环境
    单击Windows的【开始】菜单【开始】→【程序】→【Borland Delphi 7】→【Delphi 7】。 (2)  创建项目 缺省时Delphi创建了一个项目和一个窗体单元文件,我们直接对窗体设置大小和字体等属 性。
    (3)  添加组件 首先往窗体中添加一个Edit组件Edit1、一个RadioGroup组件RadioGroup1、一个GroupBox 组件GroupBox1 和二个Button组件Button1~Button2,再在GroupBox1 中加三个CheckBox组
    
    件CheckBox1~CheckBox3。
    (4)  设置组件属性 组件属性设置如表 3-17 所示。
    
    表 3-17   组件属性设置
    

    
组  件
    
属  性
    
属性值
    
组  件
    
属  性
    
属性值
    
Edit1
    
Text
    
[空串]
    
Form1
    
Caption
    
按钮组件练习
    
 
    
    
    RadioGroup1
    
Caption
    
海鲜
    
GroupBox1
    
Caption
    
佐料
    
 
    
    Items
    
龙虾(&L) 青蟹(&C) 鲍鱼(&A)
    
CheckBox1
    
Caption
    
酱油(&S)
    
CheckBox2
    
Caption
    
芥末(&M)
    
CheckBox3
    
Caption
    
醋(&V)
    
Button1
    
Caption
    
提交(&R)
    
Button2
    
Caption
    
关闭(&C)
    

 
    设置完组件属性后,窗体中组件及其布局如图 3.14 所示。
    (5)  添加并编写组件事件代码
    为按钮 Button1 添加 OnClick 事件,响应过程为 Button1Click;Button1Click 过程的作 用是按用户设置的 RadioGroup1 和 CheckBox1~CheckBox2 的值提交内容,从而让 Edit1 组件作出相应的显示,其代码如下:
    
    procedure TForm1.Button1Click(Sender: TObject);
    var choice:string;
    begin
    if RadioGroup1.ItemIndex<>-1 then begin
    case RadioGroup1.itemindex of
    0:choice:='龙虾';
    1:choice:='青蟹';
    2:choice:='鲍鱼';
    end; Edit1.Text:='你选择了' choice;
    if CheckBox1.Checked then Edit1.Text:=Edit1.Text '、酱油'; if CheckBox2.Checked then Edit1.Text:=Edit1.Text '、芥末'; if CheckBox3.Checked then Edit1.Text:=Edit1.Text '、醋'; end
    else
    Edit1.Text:='你没有点任何海鲜!';
    end;
    
    为按钮Button2  添加OnClick事件,响应过程为Button2Click,Button2Click过程用来关闭窗 体,其代码如下:
    
    procedure TForm1.Button2Click(Sender: TObject);
    begin
    Close;
    end;
    
    (6)  保存程序 将单元文件保存为“Unit3_ex1.pas”,将项目文件保存为“Project3_ex1.dpr”。 (7)  运行程序
    单击工具栏中【Run】按钮运行程序。运行后,分别在单选按钮和复选框中输入数据,单 击【提交】按钮,窗体将按选择的内容显示在文本框中。
    
    
    
    
    图 3.14   实验 3.1.1 的界面 图 3.15   实验 3.1.2 的界面
    
    【学以致用】
    按图 3.15 设计窗体,当用户选择后,按【确定】按钮,将 选择内容显示在 Edit 组件中,注意各组件上的快捷键。按【取 消】按钮,将 Edit 组件内容清空。
    【探索求新】
    设计一表决器,表决器中有 6 个候选项(如:北京、上海、 深圳、广州、武汉、南京),单选按钮有 1、2、3、4,当选择 3 时,只能选择 3 个候选城市,通过程序自动限制复选框的选择 数量,【提交】后将选择的城市显示在编辑框中,见图 3.16。
    【挑战新高】
    用窗体方式设计一摇号器,输入一个整数 n,代表摇号范
    
    围,输入一个整数 m(m<n),代表摇出 m 个不重复的随机数, 要求:每次摇号得出不同的结果,随机数出现概率均衡,窗体 随摇出数量多少而自动改变大小,见图 3.17。
    
    
    
    图 3.17   实验 3.1.4 运行效果
    
    提示:Random()为随机数函数。
    
    3.10.2 设计由列表类组件实现的功能窗体
    
    【实验目的】
    熟悉 Delphi 中列表型组件的使用,锻炼代码编写。
    图 3.16   实验 3.1.3 界面
    
    【实验要求】 按要求设计一窗体,并实现其功能。
    【示范模仿】 用列表框设计一表决窗口,从候选城市中选出若干城市,并可以对选出的城市进行
    排序。
    (1)  进入 Delphi 开发环境
    单击 Windows 的【开始】菜单【开始】→【程序】→【Borland Delphi 7】→【Delphi 7】。
    (2)  创建项目
    缺省时 Delphi 创建了一个项目和一个窗体单元文件,我们直接对窗体设置大小和字体 等属性。
    (3)  添加组件
    首先往窗体中添加二个 ListBox 组件 ListBox1~ListBox2、七个 Button 组件 Button1~
    Button7。
    (4)  设置组件属性 组件属性设置如表 3-18 所示。
    
    表 3-18   组件属性设置
    

    
组  件
    
属  性
    
属性值
    
组  件
    
属  性
    
属性值
    
 
    
    
    
    
    ListBox1
    
 
    
    
    
    
    Items
    
北京 上海 天津 重庆 广州 杭州 南京
    
Button1
    
Caption
    
>>
    
Button2
    
Caption
    
>
    
Button3
    
Caption
    
<
    
Button4
    
Caption
    
<<
    
Button5
    
Caption
    

    
Button6
    
Caption
    

    
Button7
    
Caption
    
退出
    

 
    设置完组件属性后,窗体中组件及其布局如图 3.18 所示。
    
    
    
    
    
    (5)  添加并编写组件事件代码
    图 3.18   实验 3.2 界面
    
    为按钮 Button1 添加 OnClick 事件,响应过程为 Button1Click;Button1Click 过程的作
    
    用是将所有候选项都提交到已选项列表中,其代码如下:
    
    procedure TForm1.Button1Click(Sender: TObject);
    begin
    for i:=0 to ListBox1.Items.Count-1 do
    begin //将 ListBox1 中所有选项加到 ListBox2 中
    ListBox2.Items.Add(ListBox1.Items.Strings[i]);
    end;
    
    //将 ListBox1 中所有选项删除
    for i:=ListBox1.Items.Count-1 downto 0 do
    ListBox1.Items.Delete(i);
    showbtnen;
    end;
    
    为按钮Button2  添加OnClick事件,响应过程为Button2Click,Button2Click过程用来将当前 选中的候选项提交到已选项列表中,其代码如下:
    
    procedure TForm1.Button2Click(Sender: TObject);
    begin
    for Item:=0 to ListBox1.Items.Count-1 do if ListBox1.Selected[Item] then
    begin ListBox2.Items.Add(ListBox1.Items.Strings[Item]); ListBox1.Items.Delete(item);
    break;
    end; showbtnen; end;
    我们可以发现,几个按钮的事件中,都调用了showbtnen过程,它是用来设置按钮灰显的, 使得按钮的使用符合环境状况,其代码如下:
    
    procedure TForm1.ShowBtnEn;
    begin
    if ListBox1.Count>0
    then button2.Enabled:=true else button2.Enabled:=false;
    
    if ListBox2.Count>0
    then button5.Enabled:=true else button5.Enabled:=false;
    
    if ListBox1.SelCount>0
    then button3.Enabled:=true else button3.Enabled:=false;
    
    if ListBox2.SelCount>0
    then button4.Enabled:=true else button4.Enabled:=false;
    
    button6.Enabled:=false;
    
    for i:=1 to ListBox2.Count-1 do if ListBox2.Selected[i] then
    begin button6.Enabled:=true; break; end;
    
    button7.Enabled:=false;
    for i:=0 to ListBox2.Count-2 do if ListBox2.Selected[i] then
    begin button7.Enabled:=true; break; end;
    end;
    
    (6)  保存程序 将单元文件保存为“Unit3_ex2.pas”,将项目文件保存为“Project3_ex2.dpr”。 (7)  运行程序
    单击工具栏中【Run】按钮运行程序。运行后,分别在候选项中选中选项,单击【>】 按钮,即可提交至已选列表中,或直接单击【>>】按钮,将所有候选选项提交至已选列 表中。
    【学以致用】 刚才,我们仅仅完成了【>】和【>>】事件,只能从候选列表中提交至已选列表中,
    而无法将错选的选项返回候选列表,请同学们完成【<】和【<<】功能。
    【探索求新】 上题中,当选中已选列表的选项时,可通过单击【↑】或【↓】调整次序,请完成该
    2 个按钮事件。
    【自学成材】 上题中,还可以通过直接用鼠标拖拽候选项至已选列表,或拖拽已选项至候选列表,
    请完成相应事件。

    

 

相关新闻

肢体语言塑造你自己
每一个程序员要遵守的一些优秀编程风格
杂谈语言(之六)——文字改革(下):一失足成千古恨的文字改革
杂谈语言(之五)——文字改革(上):半吊子的改革最糟糕!
杂谈语言(之四)——续谈广东话的口头语(2)
杂谈语言(之四)——续谈广东话的口头语(1)
杂谈语言(之三)——那些深受古汉语影响的语言(方言)
杂谈语言(之二)——语言学习的边际成本递减效应
《VB程序设计基础》选择题
设计模式之Iterator

您可能对这些感兴趣  

第7讲 综合分析BIM在运用与推广中的障碍问题
考核学生质量的困难
日本福岛核电站事故初步分析
论科技异化与科技人化
中国科技计划项目管理现状与对策
财政科技资金的审计重点和内容
软科学研究机构在政府决策中的功效、困境及对策研究
打造超级DOS系统(下)
DOS命令基础应用(6)
打造超级DOS系统(上)

题目筛选器
日期:
类型:
状态:
得分: <=
分类:
作者:
职业:
关键字:
搜索

 
 
 
  焦点事件
 
  知识体系
 
  职业列表
 
 
  最热文章
 
 
  最多引用文章
 
 
  最新文章
 
 
 
 
网站介绍 | 广告服务 | 招聘信息 | 保护隐私权 | 免责条款 | 法律顾问 | 意见反馈
版权所有 不得转载
沪ICP备 10203777 号 联系电话:021-54428255
  帮助提示    
《我的太学》是一种全新的应用,您在操作中遇到疑问或者问题,请拨打电话13564659895,15921448526。
《我的太学》