Delphi_7_用户界面设计

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
无模式对话框: 在它出现在屏幕的同时,用户还可以在 其他的窗口中进行工作。
有模式对话框: 在它出现在屏幕的时,用户一定要先对 它进行对话,关闭后才可以开出其他的工作窗口。
1. OpenDialog对话框 [例7-9] 设计【打开】对话框
2. SaveDialog组件 [例7-10] SaveDialog组件的使用
3.MessageDlgPos函数 function MessageDlgPos(constMag:string; DlgType:TMsgDlgType;Buttons:TmsgDlgButtons; HelpCtx:Longint;x,y:Integer):Word;
4.ShowMessage过程 Procedure ShowMessage(const Msg:string);
Close 和 SpeedBotton2的Click事件代码设成同样:
procedure TForm1.Close1Click(Sender: TObject); begin
Close; end;
状态栏组件栏中Standard卡,取Panel组件,形成长条, 准备作状态的承载面板。Caption: 空, Name: StatusPanel ,
[例7-7]
5. InputBox函数
function InputBox(const Acaption,Aprompt, AdefaultMsg:string;):string;
6. MessageDlgPosHelp函数
function MessageDlgPos(constMag:string; DlgType:TMsgDlgType;Buttons:TmsgDlgButtons; HelpCtx:Longint;x,y:Integer; const HelpFileName:string):Word;
3. 菜单项的动态调整
菜单属性中: Visible [True, False] 出现(不出现)实际有的菜单。 Enabled [True, False] 明色(灰色)实际有的菜单。 Checked [True, False] 菜单前打(不打)钩V。 RadioItem和Checked[True, False] 菜单前加(不加)圆点。
Align: alBottom(底端) ★Panel组件的外框有两条线,BevelOuter(外线),
BevelIner(内线), bvLowered(凹),bvNone(不设), bvRaised(凸), bvSpace(一段空白区域) 设置:StatusPanel的BevelOuter(外线):bvRaised,
可把以上的属性设置,在程序运行时改变,实现菜单项的 动态调整。
调用过程可以动态地增加新菜单: Item:=TMenuItem.Create(option);
[例7-3]动态调整菜单项 (1) 菜单项有效性控制和复选标记 (2) 隐藏不需要的菜单 (3) 添减菜单项
7.2 工具栏和状态栏
Windows的窗口,顶部大多有一工具栏,底部有一状态栏 1. 工具栏
3. FontDialog组件 [例7-11] 添加字体对话框
4. FindDialog组件 [例7-12] 为文本编辑器添加查找对话框
5. ReplaceDialog组件 [例7-13] 为文本编辑器添加替换对话框
6. ColorDialog组件 [例7-14] 为文本编辑器添加颜色对话框
7. PrintDialog组件 [例7-15] 为文本编辑器添加打印对话框
ScrollLabel.Enabled:=GetKeyState(VK_DELETE) and 1=1;
InsLabel.Enabled:=GetKeyState(VK_INSERT) and 1=1;
end;
Procedure TMainForm.FormActivate(Sender: TObject);
begin
UpdateKeyPanel;
end;
Procedure TMainForm.FormKeyDown(Sender: TObject; var Key:
Word; Shift: TShiftState);
begin
UpdateKeyPanel;
end;
7.3 信息对话框
1.MessageBox函数 function MessageBox(c(5)ShowMessage函数
ToolBar组件,它带有自己的许多按钮(ToolButton) Win32 卡 [例7-4] 文档编辑器工具栏 ImageList1组件有许多工具图片 2. 状态栏 StatusBar组件,它带有自己的许多面板 Win32 卡 [例7-5] 创建状态栏
用Panel组件也可建立工具栏和状态栏
工具栏 组件栏中【Standard】卡,取MainMenu组件
Open 和 SpeedBotton1的Click事件代码设成同样:
procedure TForm1.Open1Click(Sender: TObject); begin OpenDialog1.Execute; MessageDlg('Open file '+Opendialog1.Filename, mtConfirmation,[mbOK,mbCancel],0); end;
BevelIner(内线):bvLowered 在StatusPanel组件上加4个Panel组件和4个Label组件,分 别是:
4 个 Panel 组 件 : InsPanel,DelPanel,CapsPanel,
NumPanel Caption: 空, BevelOuter(外线):None, BevelIner(内线):bvLowered
7.4 对话框组件
Delphi7提供的对话框组件包括Open、Save、Font、Color 等,在Dialogs卡上。所有的对话框组件在运行时是不可 见的,它由事件来激发,如菜单或按钮的OnClick事件, 编写激发代码:
<对话框组件名>.Execute; 对话框组件所提供的对话框大多是“有模式对话框”:
在 Public 段
Procedure UpdateKeyPanel;
过程申明
Procedure TMainForm.UpdateKeyPanel;
begin
CapsLabel.Enabled:=GetKeyState(VK_CAPITAL)and 1=1;
NumLabel.Enabled:=GetKeyState(VK_NUMLOCK) and 1=1;
可视化程序设计语言 Delphi 7
第7 章
用户界面设计
7.1 菜单设计
菜单是Windows应用程序最常用的交互方式,菜单 有下拉式菜单和弹出式快捷菜单,Delphi7提供 了可视化组件TmainMenu和PopupMenu来创建下拉 式菜单和弹出式快捷菜单。
1.下拉式菜单:组件TmainMenu
设计File ->Open Close 对这二个菜单设计工具栏 组件栏中【Standard】卡,取Panel组件,形成长条,准
备作工具的承载面板,快捷工具按钮将建在其上。它是容 器组件。 Caption: 空,Name: ToolPanel,Align: alTop(顶端, 标题、菜单的下方)
在组件栏中【Additional】卡,取两个组件 SpeedBotton 加在ToolPanel上。
3.添加弹出菜单 还可对文档编辑器加上弹出式快捷菜单。 [例7-18]为文档编辑器添加弹出菜单 → PopupMenu→双击→ 菜单设计器→设计各项菜单 → 为各菜单设置相应的Action或OnClick事件。 注:Form1 的 PopupMenu 要设成 PopupMenu1
4.菜单模板 用户在进行菜单设计时,可利用系统提供的已定制的菜 单模板,也可将自己定义的菜单以模板的形式保存,以 提供给别人或自己今后设计菜单用。 (1)利用系统提供的菜单模板:右键,Insert From Template 命令。 (2)将自己的菜单以模板的形式保存:右键,Save As Template 命令。 [例7-19]用菜单模板为文档编辑器添加“帮助”菜单。 双击→ MainMenu1 →右键→ Insert From Template
7.5 文档编辑器
完成一个功能完整、符合Windows程序风格的文档编辑器 1.添加下拉式菜单
[例7-16]添加下拉式菜单的文档编辑器 对菜单组件MainMenu的【Images】属性为ImageList1, 这样可在菜单上加图标。 2.Action 行为 Standard卡上有组件:ActionList行为列表组件,我们 可以选它作为菜单。 [例7-17]为菜单项添加Action → ActionList1→双击→ActionList编辑器→右键→ New Standard Action →选择其中需要的一些Action 命令→OK。 菜单编辑器中的菜单项,选【Action】属性为 ActionList行为列表中的某一项。工具栏中的工具按钮 的Action方法也可设为ActionList行为列表中的某一项
SpeedBotton1的Glyph属性..进入Picture Editor对话框 Load………
C:/Program Files/Command Files/Broland Shared/Images/Bottons
该目录下选一图标,作为工具图标。
Hint: “打开”,ShowHint: True AllowAllUp: True, GroupIndex: 1 同样处理SpeedBotton2:………… Hint: “退出”
procedure ShowMessage(const Msg:string); onst Text; Caption: Pchar;
Flage: Longint=MB_OK):Iteger; 2. MessageDlg函数
function MessageDlg(constMag:string; DlgType:TMsgDlgType;Buttons:TmsgDlgButtons; HelpCtx:Longint):Word;
Байду номын сангаас
[例7-1]设计下拉式菜单
Standard 卡
2.弹出式快捷菜单: 组件PopupMenu
[例7-2]设计弹出式式菜单 Standard 卡
菜单设计方法与1相同,但要使弹出式菜单中的某项菜 单的OnClick事件与某下拉式菜单的OnClick事件相连。 另外,要使Form1的【PopupMenu】属性对应于PopupMenu1
相关文档
最新文档