求代码,实现系统菜单功能(系统剪切,删除,粘帖这些)

问题描述

有没有人实现过C#winform中系统菜单功能(主要指-剪切、粘帖、删除,全选,撤消,重做)这些功能???

解决方案

解决方案二:
我曾做过记事本实现过这些功能,你上网搜搜吧,应该有许多的
解决方案三:
switch(e.Button.ToolTipText){case"加粗":if(this.richTextBox1.SelectionFont.Bold)this.richTextBox1.SelectionFont=newFont(this.richTextBox1.SelectionFont.FontFamily,this.richTextBox1.SelectionFont.Size,FontStyle.Regular);elsethis.richTextBox1.SelectionFont=newFont(this.richTextBox1.SelectionFont.FontFamily,this.richTextBox1.SelectionFont.Size,FontStyle.Bold);break;case"斜体":if(this.richTextBox1.SelectionFont.Italic)this.richTextBox1.SelectionFont=newFont(this.richTextBox1.SelectionFont.FontFamily,this.richTextBox1.SelectionFont.Size,FontStyle.Regular);elsethis.richTextBox1.SelectionFont=newFont(this.richTextBox1.SelectionFont.FontFamily,this.richTextBox1.SelectionFont.Size,FontStyle.Italic);break;case"下划线":if(this.richTextBox1.SelectionFont.Underline)this.richTextBox1.SelectionFont=newFont(this.richTextBox1.SelectionFont.FontFamily,this.richTextBox1.SelectionFont.Size,FontStyle.Regular);elsethis.richTextBox1.SelectionFont=newFont(this.richTextBox1.SelectionFont.FontFamily,this.richTextBox1.SelectionFont.Size,FontStyle.Underline);break;case"左对齐":this.richTextBox1.SelectionAlignment=HorizontalAlignment.Left;break;case"居中":this.richTextBox1.SelectionAlignment=HorizontalAlignment.Center;break;case"右对齐":this.richTextBox1.SelectionAlignment=HorizontalAlignment.Right;break;case"剪贴":Clipboard.SetDataObject(this.richTextBox1.SelectedText,true);this.richTextBox1.SelectedText="";break;case"粘贴":this.richTextBox1.SelectedText=(string)Clipboard.GetDataObject().GetData(DataFormats.Text);break;case"删除":this.richTextBox1.SelectedText="";break;case"撤消":this.richTextBox1.Undo();break;case"重复":this.richTextBox1.Redo();break;case"表格":DataTabledt=newDataTable();dt.Columns.Add();dt.Columns.Add();dt.Columns.Add();DataRowdr=dt.NewRow();dr[0]="aa";dr[1]="aa";dr[2]="aa";dt.Rows.Add(dr);dr=dt.NewRow();dr[0]="bb";dr[1]="bb";dr[2]="bb";dt.Rows.Add(dr);Clipboard.SetDataObject(dt,true);//this.richTextBox1.SelectedText=Clipboard.GetDataObject().GetData(DataFormats.Text).ToString();this.richTextBox1.Paste();MessageBox.Show(this.richTextBox1.Rtf);break;case"超链接":break;case"图片":if(this.openFileDialog1.ShowDialog()==DialogResult.OK){this.openFileDialog1.Filter="图片文件|*.jpg|所有文件|*.*";Clipboard.SetDataObject(Image.FromFile(this.openFileDialog1.FileName),true);this.richTextBox1.Paste();}break;case"左缩进":richTextBox1.SelectionBullet=true;richTextBox1.SelectionIndent=8;richTextBox1.SelectionHangingIndent=3;richTextBox1.SelectionRightIndent=12;break;case"右缩进":break;case"字体":this.fontDialog1.ShowColor=true;if(fontDialog1.ShowDialog()!=DialogResult.Cancel){this.richTextBox1.SelectionFont=this.fontDialog1.Font;this.richTextBox1.SelectionColor=this.fontDialog1.Color;}break;}
解决方案四:
有没有更好的方法?我指的是实现类似于windows系统的功能,而不是针对某一个控件的,如果在一个小软件中有多个这样的控件,那这样写不是很麻烦???我想是不是要用到api等?谢谢
解决方案五:
捕获KeyDown消息然后在OnKeyDown的去处理
解决方案六:
应该是调API实现的

时间: 2024-09-20 00:31:38

求代码,实现系统菜单功能(系统剪切,删除,粘帖这些)的相关文章

利用win7系统画图功能快速剪切图片的方法

  Win7系统自带很多功能,画图程序很多用户首选图片处理工具,不过它的功能实在是薄弱了些,比如想要截取一张图片中的部分内容,首先要选取想保留的部分,然后粘贴到一张新的画布中,增添麻烦.Win7系统画板功能引入了类似于Office 2007的"Ribbon"风格,默认设置下并不显示菜单栏,所有功能按钮都分类集中在相应的功能组中,我们可以直接点击剪裁操作.下面一起看看详细操作方法. 1.首先请单击"选择"按钮,默认是"矩形选择"的方式,从"

遍历系统菜单的顺序问题

问题描述 当用户登录系统后 进入系统主页面,左面是系统菜单.系统菜单是通过struts2的s:iterator标签遍历的,代码如下:<s:if test="#session.parentMos.size>0"> <s:iterator value="#session.parentMos" var="pm" status="pmStatus"> <div id="test<s:

用Win8系统刷新和系统重置轻松恢复系统方法

Win8有着更简单的恢复方式,win8系统内置的"系统刷新"和"系统重置"组件让我们在Windows 8系统出问题的时候能轻松恢复到正常状态--官方安装,无毒无马无插件. 小知识:什么是"系统刷新"和"系统重置" 系统刷新:Win8将保留个性化设置.个人文件.驱动以及通过Windows商店中的安装的应用程序,删除其它应用程序,恢复到默认状态.简单地说,其效果相当于于Ghost备份的恢复. 系统重置:系统完全重装,删除非系统程序

Win7系统新功能介绍:多点触摸和跳跃菜单

Windows 7新增了许多实用的功能,有些功能虽然很小,不太引人注目,但是小细节里的隐藏着大秘密,下面我们就为大家一一解读Windows 7系统新功能小细节里的大秘密. 1.多点触摸 Windows 7的多点触控功能可谓是顺应民心,由于近两年触屏手机的大肆宣扬,电脑产品也开始跃跃欲试,而windows 7为触摸屏技术提供了发挥的软件空间,使之成为可能. 不同于一般的触摸屏,Windows 7引入了全新的多点触控概念,即一个屏幕多点操作.由于是多点触摸,机器能够感应到手指滑动的快慢以及力度(力度

求纯JSP编写的登录系统代码

问题描述 同标题求纯JSP编写的登录系统代码,加讲解,小白新手求指导

[WPF疑难]如何禁用WPF窗口的系统菜单(SystemMenu)

点击窗口左上角图标时弹出来的菜单也就是这里所说的系统菜单(SystemMenu),有时需要禁用(移除)其中的某些或全部菜单项.刚才也有网友问到了这一点,OK,贴代码: 要全部禁用(移除)菜单项请调用SystemMenuManager.RemoveWindowSystemMenu(Window window)方法,想部分禁用(移除)菜单项则调用SystemMenuManager.RemoveWindowSystemMenuItem(Window window, int itemIndex)方法.

通用权限系统框架功能实现设计

1  开发环境技术:B/S(.NET C# ) 1.Windows 7及以上 (支援最新Win 8) 2.Microsoft Visual Studio 2013 C#.NET 3..NET Framework 4.0及以上 (支援最新4.5版本) 4.SQL Server 2008 R2及以上 (支援2012/2014)框架特点 2  系统简介 1.帮企业快速地实现各种通用功能,结合系统现有的通用权限管理功能. 2.快速地开发出各种项目应用系统.让企业开发一个系统变得非常轻松. 3.符合RBA

iOS系统菜单控制器UIMenuController使用简介

iOS系统菜单控制器UIMenuController使用简介 一.引言    在许多iOS应用中,当用户进行某文字或图片区域的长按操作时,都会弹出一个系统菜单控件,用户可以通过操作菜单控件上的按钮进行数据的复制.剪切.粘贴等操作.系统原生的某些控件已经支持了对UIMenuController的唤出操作,然而并不是所有控件都支持,开发者可以通过自定义UIMenuController来更加灵活的使用菜单控件,在前面博客中有介绍iOS剪切板相关知识,地址如下: iOS剪切板UIPasteboard使用

求一个c++源代码 会议室预定系统

问题描述 求一个c++源代码 会议室预定系统 五.项目需求: //前台操作-------------------------------------------------- 1.员工登录功能,展示信息(包括,姓名.当前已经预定的办公室名.时间),如无对应信息显示为空即可.(类似ATM系统,三次锁定) 2.主页面拥有如下功(优先展示所有的办公室列表) 进行选择: A. 设置时间段(开始时间必须在结束时间之前),查询当前可用的办公室,选择需要预定的办公室,并确认预定情况. 条件约束: 进入办公室预