说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

VB实现窗口的弹出式菜单

HTML文档下载 WORD文档下载 PDF文档下载
VB实现窗口的弹出式菜单

  在Windows95、Windows98或NT的风格中,有按动鼠标器右键弹出下拉菜单的操作,在VB执行环境下,有一些控件本身具有弹下拉菜单的功能,如TexTbox控件等,但大多数编辑类控件以及窗体本身却没有此功能,要在窗口中任意位置实现PopUpMenu(弹出式菜单),可借助VB的菜单工具来实现。
  首先,打开VB的“工具”菜单条,利用“菜单编辑器”为窗体生成一个菜单:
  标题(Caption) 菜单条名(Name)
  编辑 menuEdit
  ……复制 mnuCopy
  ……剪切 munCut
  其次,将生成的menuEdit菜单设置为不可视。
  Private Sub Form_Load()
  Me.menuEdit.Visibe=False
  ′menuEdit菜单设置为不可视
  End Sub
  然后,利用MouseDown事件实现任意位置弹出PopUpMenu,如下例:
  本例中以RichTexBox控件为例,在其上面实现复制、剪切功能。
  1.复制功能的实现。
  Private Sub MnuCopy_Click()
  Clipboar.Clear′将剪贴板清空
  ′将RichTexBox控件上选择上的内容复制到剪贴板
  Clipboard.SetTextRichTexBox1.SelText
  End Sub
  2.剪切功能的实现。
  Private Sub MnuCut_Click()
  Clipboard.Clear ′将剪贴板清空
  ′将RichTextBox控件上选择了的内容复制到剪贴板
  Clipboard.SetTextRichBox1.SelText
  ′将RichTexBox控件上选择了的内容删除
  SendKeys″{DELETE}″,True
  End Sub
  3.在RichTexBox控件的MouseDown事件中实现任意位置弹出PopUPMenu。
  OPrivate Sub RichTexBox1_MouseDown(Button As Integer,Shift As Integer,x As Single,Y As Single)
  Dim MnuFile AS Menu ′声明一个菜单类型的变量
  Set munFile=Me.MenuEdit ′将MenuEdit赋给菜单变量
  if Button=2 Then ′判断是否按动鼠标器右键
  ′判断RichTexBox控件上选择了的内容是否存在,决定复制、剪切菜单条是否可操作。
  If Len(RichTexBox.Text)=0 Or Len(RichTexBox.SelText)=0 Then
  mnuCopy.Enabled=Flase ′复制菜单条不可操作。
  nmuCut.Enabled=False ′剪切菜单条不可操作。
  nmuCopy.Enabled=True ′复制菜单条可操作。
  nmuCut.Enabled=True ′剪切菜单条可操作。
  End IF
  PopupMenu mnuFile ′弹出PopUpMenu。
  End If
  End Sub
  这样,在VB执行环境中,操作窗体上的RichTexBox控件,按动鼠标器右键就可弹出下拉菜单,实现复制、剪切功能。
(宁夏 王晓东)
捕捉 MouseExit 事件 -VB资料 操作过程动态显示 -VB资料 查找月份的最后一天-VB资料 程序启动时,如何自动判断 MDB文件是否损坏并自动修复?-VB资料 读取和修改Windows注册表 -VB资料 对VB的IDE环境的扩展 防止文本控件中的部分滚动-VB资料 关闭正在运行的程序 -VB资料 关机消息的拦截 -VB资料 VB获得、设置鼠标双击间隔时间 VB获取当前系统平台 记载Windows使用的时间-VB资料 加速Visual Basic For Application(VBA) 监视程序的运行情况 -VB资料 交换鼠标按钮 -VB资料 交换鼠标左右键 -VB资料 禁止使用 Alt-Tab 或 Ctrl-Alt-Del -VB资料 控制光驱门的开关 -VB资料 VB利用 窗口函数监视系统的运行情况(VB类) VB判断是否在VB5环境下运行 VB判断一个32位程序是否结束 VB判断一个程序启动完成(不是结束) 屏蔽TextBox的系统菜单 -VB资料 启动时禁止装入 Add-Ins -VB资料 让Timer控件每5分钟触发一次事件 -VB资料 让程序启动快一点 -VB资料 VB如何调用系統的【查找】、【替换】的对话框? VB如何动态新增、移除 ODBC DSN? VB如何读取 Picture 内任何一点的颜色值? VB如何获取硬盘卷标、序列号和文件系统类型? VB如何判别程序是在Win95或NT下执行? 小问题,高分请教用滑动条制作的调色板问题。 在Asp怎样连接Access数据库? 跳线 高分求DELPHI4.0中的哪个做安装程序的工具,只要这个版本的! 难道是Delphi6的Bug吗?还望遇到过这样问题的大哥多多指教! 怎样实现要最新的信息? 一个疑惑的问题? 此觸發器該如何寫 关于数据库更新的问题!帮帮忙,50分就是你的啦! easy问题送大分,DLL中的资源,马上结贴 菜鸟刚学vc.net,新建了一个dialog based,只有一个窗体,我在窗体上放一个按钮,这就是我的程序了,运行之后生成了可执行文件,我把他拷 不明白交换机的网管功能? 请问:如何将richtextbox中显示的内容转换成图像信息?(急) 请各位同志帮我看看这段程序: 谢谢! 没有免费的午餐.各位求救.dbf文件损坏,如何修复(没有带.cdx文件) 在线等!急急急!!! 请大家帮忙 急需解决!!!!! 一个简单的问题,请帮忙 请教!如何用非模式对话框实现面板? 请问高手,这样是否可行? 是不是真的要我去当内裤了呀~~~~~~~~~~~~~在线等待!~!~!~! 请各位大侠帮忙:要在Excel中实现以下功能 如何往串口的发送脚送出一个持续10ms的低电平? 如何实现有些项输出到打印机,有些项输出到显示器,也就是有预览时能看到,而打印时不把他打印出来. ★紧急求助!!如何在CListCtrl中的非第一列贴图?或者设个标记?在线等待!★ memset、memcopy\memget等都是干什么的怎么用?? dropDownList的异常现象?????? 如何改变EventLog中Source和自定义Log的对应关系? 紧急求助,在线等待。 为什么无法实现? 请问vc60.idb和vc60.pdb是干什么用的? dreamweaver Mx再繁體系統中的使用 乱码问题!请高手赐教!! 请问在jsp中如何连接access数据库? 你愿意赐教吗? w3svc记录的时间跟系统时间不一致? 谁能告诉我在哪儿可以下载到微软BHO的例子? 一个弄了很长时间的问题,高手过来看看。。 怎样在网页中显示数据类型为"OLE 对象"的图片 可以帮我看一下这段程序吗? 谢谢! 急救我 请问 tomcat 中服务 问题? 我的心渐渐寒了,IT公司怎么这么没信誉呀? 关于安装qq的问题. 我看到有的文章发布系统里,有在word里直接粘贴就可以显示的JS,但我不会调用,谁知道? 一个很菜的问题 需要一个弹珠台游戏的设计思路,(windows自带的那个pinball游戏) windows 2000 中有多少中方法访问硬盘上的文件?? 文档不能删除的问题!请高手赐教,定重谢 Set object1 = object2 有关拷贝文件的问题? !!!!!!!!!如何让Memo新添加的一行使用colorbox1.selected,其他行不变????????? 西班牙一煤矿瓦斯泄漏致6人死 直升机日本诺贝尔医学奖得主为募资发薪水跑马美国加油站员工遭枪击 子弹打中手机躲穆兄会领导人将首次在埃及受审 原定于穆兄会领导人将首次在埃及受审 原定于日本一男子摔死1岁女儿 只因其哭闹不飓风袭击德国致多地交通瘫痪 乘客被困新华国际时评:“三无”安倍何谈“领袖中美就推动朝鲜半岛无核化和重启六方会俄圣彼得堡将遭强飓风袭击 涅瓦河水位日本一办公室里种大麻盈利逾千万日元 美国14名男子因向未成年人传播色情图德联邦议院将召开特别会议商讨美监听事美一独臂独腿男勇闯火海协助救出两名儿美国14名男子因向未成年人传播色情图泰国美白产品广告被批有种族歧视之嫌已日本研发“织女”机器人助人感受与亲友美16岁少年因被没收手机心生不满将母黎巴嫩毒品走私严重 被指可能用于资助国际奥委会主席称赞索契为冬奥会准备工美国一男子被误判坐牢20余年后被释放中医药学会肝脾胃病学术会召开出水量少建议更换滤芯安装前置过滤器可“最后的拥抱”单固场次早知道 连续四天单固狂欢不停冬季老年人须警惕心衰年终购车钜惠 新文化报帮你砍价大乐透明日开奖,奖池13.26亿元本报发行员上了《新闻联播》十年体彩 十年老友伊拉克总理呼吁国际社会加强反恐合作欧盟进一步制裁克里米亚:禁止购买克里■简讯扫二维码 给自己找个“健康V管家”原声带河南省体彩中心急寻大乐透115万大奖明年起长春给无公害蔬菜“建档”德甲重点赛事推荐一目了然批评村民不能回避他们内心的恐惧德甲重点赛事推荐吴亚琴先进事迹报告会在梅河口通化白山
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘