使用菜单、工具栏来改变窗口的大小与颜色

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

使用菜单、工具栏来改变窗口的大小与颜色

10、WinForms高级编程

目标

创建一个更改窗口的大小与颜色的应用程序。创建一个单文档的文本编辑器应用程序。指导教师讲解阶段目标

第一部分指导(60分钟)

练习1:使用菜单、工具栏来改变窗口的大小与颜色

问题

主菜单、快捷菜单、工具栏和状态栏的应用实例

指导教师讲解问题说明

用户在窗体上单击右键,弹出图示的快捷菜单。执行其中的颜色命令可产生与主菜单中相应命令等效的结果。某命令执行时菜单项左侧带有"?"标记。再次执行该菜单命令取消相应的颜色及菜单项左侧的"?"标记,将颜色恢复为背景色。执行快捷菜单中的"红"命令,然后再次打开快捷菜单后,如图1.2所示。

图1.1默认窗体背景色

图1.2红色背景色

分析

指导教师分析解题思路

添加工具栏和状态栏后,窗体的界面设计如图1.3所示。主要用到了这些控件:MenuStrip,Context MenuStrip,ToolStrip,StatusStrip。

图1.3窗体设计界面

推荐步骤:

(1)创建Windows应用项目。

(2)按照设计界面添加相应的控件,并在主菜单和快捷菜单中添加相应的菜单项;并添加相应的点击处理事件函数。

(3)完整的代码如下:

using System;

using System.Collections.Generic;

using ponentModel;

using System.Data;

using System.Drawing;

using System.Text;

using System.Windows.Forms;

namespace menuToolStatus{

public partial class Form1:Form

{

public Form1()

{

InitializeComponent();

}

private void MenuItem_default_Click(object sender,EventArgs e)

{

this.BackColor=Control.DefaultBackColor;

MenuItem_default.CheckState=CheckState.Indeterminate;

cMenuItem_default.CheckState=CheckState.Indeterminate;

MenuItem_blue.Checked=MenuItem_green.Checked=MenuItem_red.Checked=false ;

cMenuItem_blue.Checked=cMenuItem_green.Checked=cMenuItem_red.Checked=fal se;

StatusLabel3.Text="默认颜色";

}

private void cMenuItem_default_Click(object sender,EventArgs e)

{

MenuItem_default_Click(sender,e);

}

private void MenuItem_red_Click(object sender,EventArgs e)

{

MenuItem_red.Checked=!MenuItem_red.Checked;

if(MenuItem_red.Checked)

{

this.BackColor=Color.Red;

MenuItem_red.CheckState=CheckState.Indeterminate;

cMenuItem_red.CheckState=CheckState.Indeterminate;

MenuItem_blue.Checked=MenuItem_green.Checked=MenuItem_default.Checked=

false;

cMenuItem_blue.Checked=cMenuItem_green.Checked=cMenuItem_default.Checked =

false;

StatusLabel3.Text="红色";

}

else

{

this.BackColor=Control.DefaultBackColor;

MenuItem_default.CheckState=CheckState.Indeterminate;

cMenuItem_default.CheckState=CheckState.Indeterminate;

StatusLabel3.Text="默认颜色";

}

}

private void cMenuItem_red_Click(object sender,EventArgs e)

{

MenuItem_red_Click(sender,e);

}

private void MenuItem_green_Click(object sender,EventArgs e)

{

MenuItem_green.Checked=!MenuItem_green.Checked;

{

this.BackColor=Color.Green;

MenuItem_green.CheckState=CheckState.Indeterminate;

cMenuItem_green.CheckState=CheckState.Indeterminate;

MenuItem_blue.Checked=MenuItem_red.Checked=MenuItem_default.Checked= false;

cMenuItem_blue.Checked=cMenuItem_red.Checked=cMenuItem_default.Checked= false;

StatusLabel3.Text="绿色";

}

else

{

this.BackColor=Control.DefaultBackColor;

MenuItem_default.CheckState=CheckState.Indeterminate;

cMenuItem_default.CheckState=CheckState.Indeterminate;

StatusLabel3.Text="默认颜色";

}

}

private void MenuItem_blue_Click(object sender,EventArgs e)

{

MenuItem_blue.Checked=!MenuItem_blue.Checked;

相关文档
最新文档