首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >1-4 多文档界面处理(3)

1-4 多文档界面处理(3)

作者头像
py3study
发布2020-01-07 20:01:32
5690
发布2020-01-07 20:01:32
举报
文章被收录于专栏:python3python3

5. 通过类的属性进行数据传值

此次案例我们改变本节案例(1)数据传值的方法,通过建立类的属性将数据传递过去。

u 实验步骤(1):

为传值目标窗口Form3定义相关属性信息如下:

小实验: Form3目标传值窗体属性定义以及Load加载事件源代码:

public partial class Form3 : Form     {         public Form3()         {             InitializeComponent();         }         //建立私有变量         private string some_name, email_address, topic, option;         //属性姓名         public string SomeName         {             get             {                 return some_name;             }             set             {                 some_name = value;             }         }         //属性电子邮件         public string Someemail         {             get             {                 return email_address;             }             set             {                 email_address = value;             }         }         //属性主题         public string Sometopic         {             get             {                 return topic;             }             set             {                 topic = value;             }         }         //属性意见         public string Someoption         {             get             {                 return option;             }             set             {                 option = value;             }         }         private void Form3_Load(object sender, EventArgs e)         {             listBox1.Items.Add(SomeName);             listBox1.Items.Add(Someemail);             listBox1.Items.Add(Sometopic);             listBox1.Items.Add(Someoption);         } }

u 实验步骤(2):

修改录入数据窗口Form2的button1_Click事件:

小实验: 修改后Form2的button1_Click事件源代码:

private void button1_Click(object sender, EventArgs e)         {             if (textBox1.Text == "" || textBox2.Text == "")             {                 MessageBox.Show("姓名,或者邮件信息禁止为空!", "信息提示");             }             else             {                 this.Hide();                 Formcc2 childForm2 = new Formcc2();                 childForm2.SomeName = textBox1.Text;                 childForm2.Someemail = textBox2.Text;                 childForm2.Sometopic = comboBox1.SelectedItem.ToString();                 childForm2.Someoption = richTextBox1.Text;                 //原来的代码内容:childForm3.Show();                 //下面是更改后的代码内容                 childForm2.MdiParent = this.MdiParent;                 childForm2.Show();             }         }

1-5 菜单和菜单组件

u 本节学习目标:

n 了解菜单栏、主菜单和子菜单三个概念

n 掌握菜单的快捷方式操作

n 掌握菜单分割条设置

n 学习菜单导航的实际应用

1-5-1 简介

菜单是软件界面设计的一个重要组成方面。它描述着一个软件的大致功能和风格。所以在程序设计中处理好、设计好菜单,对于一个软件开发是否成功有着比较重要的意义。菜单的本质就是提供了将命令分组的一致方法,使得用户易于访问,通过支持使用访问键启用键盘快捷方式,达到快速操纵软件系统的目的。

菜单从分类来说,可以分为菜单栏、主菜单和子菜单三个概念。如图1-26所示:

图1-26 菜单栏、主菜单与子菜单

1-5-2 菜单的实践操作

1.案例学习:建立简单的菜单

(1)建立Winform窗体并从工具箱的菜单和工具栏中拖放一个MenuStrip控件到窗体上。如图1-27所示:

图1-27 拖放一个MenuStrip控件到窗体上

(2)可以直接点击MenuStrip控件填写主菜单及子菜单名称,但是需要注意菜单命名时候避免直接录入汉字的问题。因为如果直接键入汉字命名菜单,则该菜单项的Name属性将出现汉字,不利于C#的编程。如图1-28所示。

图1-28 直接的中文命名不利于程序开发

虽然上述设计不会出现代码错误,但是建议采用点击MenuStrip控件,选择该控件的Items属性,在展开的项目集合编辑器中直接设置的办法。如图1-29为打开Items属性后的项目集合编辑器。

图1-29 打开items属性后的项目集合编辑器

(3)如果在命名时候在Text属性处键入“文件(&F)”,将会产生“文件(F)”的效果,&将被认为是快捷键的字符。运行时候为alt+f键执行。同理,子菜单在命名时候可以相同的效果。如图1-29中的Text属性所示。

(4)设置每个菜单项的ShortCutKeys属性。每个菜单项都有一个ShortCutKeys的属性,该项属性为用户自定义的快捷菜单组合键设置项。如图1-30所示,但注意在进行设置时候一方面要根据windows操作系统的常用快捷菜单设置,如退出一般是(alt+E),打开一般是(ctrl+O)等,另一方面至少需要一项修饰符和键的组合,否则将出错。

图1-30 设置菜单的快捷键

(5)在需要进行分割的时候,可以选择Separator选项进行功能性的分割,如图1-31所示。

图1-31 为菜单设置分割条

(6)最后形成菜单效果如图1-32所示

图1-32 菜单最后效果

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-09-07 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 5. 通过类的属性进行数据传值
  • 1-5 菜单和菜单组件
    • 1-5-1 简介
      • 1-5-2 菜单的实践操作
        • 1.案例学习:建立简单的菜单
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档