官方首页
 计算机科学与技术
 湖畔文学
 星之传说
 蓝色湖畔桃园
 湖畔艺术
 湖畔科技
 本站留言
热门关键字:    dreamlandcn.com    蓝色湖畔
 >>相关文章
·一听既懂泛型讲解,一懂就会啦,
·FLASH播放器-instal
·占用资源比较少的网页浏览器(G
·水仙花程序算法 C#版
·X.509证书结构第三版
·路由设备引发的故障
·Mcafee Artemis云
·将社交网站变为僵尸网络-反社交
·黑客侵入世界最大对撞机计算机系
·山东首例DDOS黑客攻击案告破
 >>点击排行TOP10
·多种排序算法,多种语言讲解(前言)
·多种排序算法,多种语言讲解(简单选
·多种排序算法,多种语言讲解(冒泡排
·多种排序算法,多种语言讲解(堆排序
·多种排序算法,多种语言讲解(快速排
·【其它欣赏】少儿不宜的设计
·多种排序算法,多种语言讲解(树形选
·多种排序算法,多种语言讲解(希尔排
·多种排序算法,多种语言讲解(交换排
·多种排序算法,多种语言讲解(总结)
·多种排序算法,多种语言讲解(直接插
·VC中使用GetModuleFil
·C#中DataSet绑定XML的代
·多种排序算法,多种语言讲解(归并排
·【其它欣赏】一辆卡车车身广告引发P
 
 当前位置:网站首页 > 计算机科学与技术 > .net编程 > C#.net > 浏览正文
c#网络应用编程基础 第5章 Windows窗体界面设计(4)
作者:佚名    来源:本站原创    点击数:   更新时间:2008年09月13 【字体:

5.3.2  ContextMenuStrip控件

    ContextMenuStrip控件的功能是制作右键快捷菜单。注意,该控件是用于为其他控件服务的,不能单独使用。当向窗体中添加一个ContextMenuStrip控件,会在窗体顶端出现与MenuStrip控件相似的菜单栏,但此菜单栏在程序运行时和ContextMenuStrip控件处于非编辑状态时都不会显示,所以也就不能在菜单栏上添加任何菜单项,只能在其子菜单中编辑各菜单项。编辑完成的ContextMenuStrip控件需要在窗体或相关控件的ContextMenuStrip属性中与其建立关联,才可以在程序运行时用鼠标右键单击对应控件,弹出该快捷菜单。

1. 常用的基本属性

    1) Items属性:用于编辑快捷菜单上的各菜单项。其编辑方式与MenuStrip控件的菜单项编辑相似,都是调用【项集合编辑器】来生成菜单项的。当然在ContextMenuStrip控件的【属性】窗口中也有【编辑项…】的快捷方式,可以直接调出【项集合编辑器】。

    2) Opacity属性:设置快捷菜单的透明度。取值在0%~100%之间,默认值为100%,即不透明。注意,该属性只能在代码中才能看到。

2. 常用的基本事件

    1) ItemClicked事件:快捷菜单中的任何一个菜单项被单击时触发的操作。

    2) Opening事件:快捷菜单打开时触发的操作。

【例5-13RTF文件编辑器快捷菜单设计。

    (1) 新建一个名为ContextMenuStripExampleWindows应用程序项目,将Form1.cs重命名为FormContextMenuStrip.cs,调整窗体到适当大小;设置【Text】属性为“RTF文件编辑器-快捷菜单”。

    (2) 向窗体中添加一个ContextMenuStrip控件、一个RichTextBox控件和一个Label控件,在【设计】视图下,窗体界面及控件属性如图5-19所示,其中快捷菜单中各菜单项的Name属性自上而下依次为“toolStripMenuItem大字体”、“toolStripMenuItem小字体”、“toolStripMenuItem红色字体”、“toolStripMenuItem蓝色字体”、“toolStripMenuItem绿色字体”、“toolStripMenuItem恢复字体大小”、“toolStripMenuItem恢复字体颜色”、“toolStripMenuItem保存文件”。

    (3) FormContextMenuStrip类中添加类一级变量声明。

public partial class FormContextMenuStrip : Form

{

    // 这些变量分别用于保存richTextBox1中初始文本的字体设置

    FontFamily oldFontFamily;

    Color oldColor;

    int smallSize=4;

    FontStyle oldFontStyle;

    public FormContextMenuStrip()

    {

        InitializeComponent();

    }

    …… ……

}

(4) 分别双击ContextMenuStrip控件中的各菜单项,添加其Click事件,代码如下:

private void toolStripMenuItem大字体_Click(object sender, EventArgs e)

{

    FontFamily oldFontFamily = richTextBox1.SelectionFont.FontFamily;

    richTextBox1.SelectionFont = new Font(oldFontFamily, 24, oldFontStyle);

}

private void toolStripMenuItem小字体_Click(object sender, EventArgs e)

{

    FontFamily oldFontFamily = richTextBox1.SelectionFont.FontFamily;

    richTextBox1.SelectionFont = new Font(oldFontFamily, smallSize, oldFontStyle);

}

private void toolStripMenuItem红色字体_Click(object sender, EventArgs e)

{

    richTextBox1.SelectionColor = Color.Red;

}

private void toolStripMenuItem蓝色字体_Click(object sender, EventArgs e)

{

    richTextBox1.SelectionColor = Color.Blue;

}

private void toolStripMenuItem绿色字体_Click(object sender, EventArgs e)

{

    richTextBox1.SelectionColor = Color.Green;

}

private void toolStripMenuItem恢复字体大小_Click(object sender, EventArgs e)

{

    richTextBox1.SelectionFont = new Font(oldFontFamily, 8, oldFontStyle);

}

private void toolStripMenuItem恢复字体颜色_Click(object sender, EventArgs e)

{

    richTextBox1.SelectionColor = oldColor;

}

private void toolStripMenuItem保存文件_Click(object sender, EventArgs e)

{

    richTextBox1.SaveFile("D:\\source.rtf", RichTextBoxStreamType.RichText);

}

    (5) 按〈F5〉键编译并执行,尝试利用快捷菜单对richTextBox1中的文本进行各种操作。

下一页
本文共 6 页,第  [1]  [2]  [3]  [4]  [5]  [6]  页

Tags:dreamlandcn.com
Google
关于我们 | 服务指南 | 著作权与商标声明 | 法律声明 | 服务条款 | 隐私声明 | 诚征英才  | 友情链接
Powered by ACTCMS 2.0
Copyrights©2008-2009 蓝色湖畔 www.dreamlandcn.comAll Rights Reserved.