当前位置: 首页 > 编程日记 > 正文

vc6中进行多行注释和反注释的方法

1、利用工具中自带的按钮实现:

Tools-->Customize-->Add-ins and Macro Files-->将SAMPLE项选中-->Commands-->Category中选择Macros-->在Commands中将CommentOut拖到工具栏,再选中一个Images,点击OK即可。

这种方法是使用/*  */进行多行注释的,而且不能全部一次取消,使用起来并不方便。

2、利用VBA 宏实现:

Tools-->Macro-->输入Macro Name-->Edit-->Description-->点击OK,删除刚才生成的代码,贴代码:
'多行注释
Sub Comment()
 if Documents.Count = 0 then
  exit sub
 end if 
     lTopLine = ActiveDocument.Selection.TopLine
 lBottomLine = ActiveDocument.Selection.BottomLine
 lInsertPoint = ActiveDocument.Selection.CurrentLine
For I = lTopLine To lBottomLine
  ActiveDocument.Selection.MoveTo I, 1
  ActiveDocument.Selection.SelectLine
  s = ActiveDocument.Selection.Text
  if s <> vbCrLf then
   s = "//" + vbTab + s
  end if
  ActiveDocument.Selection.Text = s
 Next
if lTopLine = lInsertPoint then
  ActiveDocument.Selection.MoveTo lBottomLine, dsEndOfLine
  ActiveDocument.Selection.MoveTo lTopLine, 1, dsExtend
 else
  ActiveDocument.Selection.MoveTo lTopLine, 1
  ActiveDocument.Selection.MoveTo lBottomLine, dsEndOfLine, dsExtend
 end if

End Sub
'多行反注释
Sub Uncomment()
 if Documents.Count = 0 then
  exit sub
 end if

lTopLine = ActiveDocument.Selection.TopLine
 lBottomLine =ActiveDocument.Selection.BottomLine
 lInsertPoint = ActiveDocument.Selection.CurrentLine
For I = lTopLine To lBottomLine
  ActiveDocument.Selection.MoveTo I, 1
  ActiveDocument.Selection.SelectLine
  s = ActiveDocument.Selection.Text
  while left(s, 1) = " " OR left(s, 1) = vbTab
   s = right(s, len(s) - 1)
  Wend
if left(s, 3) = "//" + vbTab then
   s = right(s, len(s) - 3)
  elseif left(s, 2) = "//" then
   s = right(s, len(s) - 2)
  end if

ActiveDocument.Selection.Text = s
 Next
if lTopLine = lInsertPoint then
  ActiveDocument.Selection.MoveTo lBottomLine, dsEndOfLine
  ActiveDocument.Selection.MoveTo lTopLine, 1, dsExtend
 else
  ActiveDocument.Selection.MoveTo lTopLine, 1
  ActiveDocument.Selection.MoveTo lBottomLine, dsEndOfLine, dsExtend
 end if

ActiveDocument.Selection.SmartFormat
End Sub
关闭并保存。
Tools-->Customize-->Commands-->在Category中选择Marcos-->在右侧Commands中拖出刚才生成的两个宏名到工具条上,-->分别选择Images图标。
设置快捷键:Keyboard-->Category中选择Macros,在Commands中选择一个然后设置快捷键即可。

3、转自:http://blog.csdn.net/jiaolongdy/archive/2010/12/30/6106782.aspx

取消/注释的宏,可以用于C++,java,VB
VC内使用方法:
将文件格式更改为dsm,放置于Program Files/Microsoft Visual Studio/COMMON/MSDev98/Macros目录下
打开VC——Customize——add-ins and Macro files
勾选上Comment,然后选择键盘,类别里选择Macros,CustomCommentOut设置好快捷键就可以了

Sub CustomCommentOut()
'DESCRIPTION: 注释/取消注释宏,可处理VB和C++、Java注释
 Dim win
 set win = ActiveWindow
 If win.type <> "Text" Then
   MsgBox "This macro can only be run when a text editor window is active."
 Else
  TypeOfFile = 3
  If TypeOfFile > 0 And TypeOfFile < 6 Then
   If TypeOfFile > 3 Then
    CommentType = "'" ' VB注释
    CommentWidth = 1
   Else
    CommentType = "//" ' C++、java 注释
    CommentWidth = 2
   End If
  
   StartLine = ActiveDocument.Selection.TopLine
   EndLine = ActiveDocument.Selection.BottomLine
   If EndLine < StartLine Then
    Temp = StartLine
    StartLine = EndLine
    EndLine = Temp
   End If
   ' 单行
   If EndLine = StartLine Then
    ActiveDocument.Selection.StartOfLine dsFirstColumn
    ActiveDocument.Selection.CharRight dsExtend, CommentWidth
    If ActiveDocument.Selection = CommentType Then
     ActiveDocument.Selection.Delete
    Else
     ActiveDocument.Selection.StartOfLine dsFirstText
     ActiveDocument.Selection.CharRight dsExtend, CommentWidth
     If ActiveDocument.Selection = CommentType Then
      ActiveDocument.Selection.CharRight dsExtend
      ActiveDocument.Selection.Delete
     Else
      ActiveDocument.Selection.StartOfLine dsFirstText
      ActiveDocument.Selection = CommentType + vbTab + _
                                        ActiveDocument.Selection
     End If
    End If
   ' 多行
   Else
    For i = StartLine To EndLine
     ActiveDocument.Selection.GoToLine i
     CommentLoc = dsFirstColumn
     ActiveDocument.Selection.StartOfLine CommentLoc
     ActiveDocument.Selection.CharRight dsExtend, CommentWidth
     If ActiveDocument.Selection = CommentType Then
      ActiveDocument.Selection.Delete
     Else
      ActiveDocument.Selection.StartOfLine CommentLoc
      ActiveDocument.Selection = CommentType + _
                                                  ActiveDocument.Selection
     End If
    Next
   End If
  Else
   MsgBox("Unable to comment out the highlighted text" + vbLf + _
    "because the file type was unrecognized." + vbLf + _
    "If the file has not yet been saved, " + vbLf + _
    "please save it and try again.")
  End If
 End If
End Sub

4、转自:http://hi.baidu.com/starloooooove/blog/item/9324343ba0364ee014cecb2a.html

打开记事本,输入如下代码:

Sub CommentBlock()
With ActiveDocument.Selection
'对于当前窗口打开的文档中选中的文本
    .ReplaceText "%", "//", dsMatchRegExpB
'在开始位置增加 // 注释
End With
End Sub

Sub UncommentBlock()
With ActiveDocument.Selection
   .ReplaceText "%//", "", dsMatchRegExpB
   '同样的,去掉在选择文本中开头找到的注释符号
End With
End Sub

安装使用这个宏文件:

1、把这个文件命名为COMMENTMAC.dsm,保存到你的VS安装目录下的O:/VS6/Common/MSDev98/Macros中;

2、在VS6的工具条上按下右键,点击Customize下

1)、ADD-INS and Macro Files属性页,选择COMMENTMAC”;

2)、选择keyboard属性页,category下选Macros,为Commands选择快捷键

相关文章:

一看就懂!【英雄联盟锐雯】与 Python 详解设计模式之门面模式

【网络配图】设计模式&#xff08;Design Pattern&#xff09;是一套被反复使用、多数人知晓的、经过分类的、代码设计经验的总结。使用设计模式的目的&#xff1a;为了代码可重用性、让代码更容易被他人理解、保证代码可靠性。设计模式使代码编写真正工程化&#xff1b;设计模…

无法挂载 NTFS格式的分区:mount: unknown filesystem type ‘ntfs’

问题&#xff1a; # mount –t ntfs /dev/sdb1 /mnt/usb mount: unknown filesystem type ‘ntfs’ 这是由于CentOS release 5.3(Final)上无法识别NTFS格式的分区。解决办法&#xff1a; 通过使用 ntfs-3g 来解决。 打开ntfs-3g的下载点http://w…

vs2008 ActiveX控件测试容器的生成以及调试ActiveX控件

1、ActiveX控件测试容器的生成&#xff1a;用TSTCON生成测试容器 http://msdn.microsoft.com/zh-cn/library/f9adb5t5(vvs.90).aspx 在搜索里搜索tstcon,双击TstCon文件夹&#xff0c;将此文件夹里的东西全部复制到另外一个新的空文件里&#xff0c;然后打开解决方案 tstcon.…

百度自动驾驶新突破:获首批T4牌照,升级Apollo 5.0,将进行复杂城市场景路测...

作者 | KYLE WIGGERS等编译 | 夕颜出品 | AI科技大本营&#xff08;ID:rgznai100&#xff09;最近&#xff0c;百度自动驾驶项目终于有了进展。先是上周悄然发布了 Apollo 的最新版本 Apollo 5.0&#xff0c;引入一些新功能&#xff1b;昨天下午&#xff0c;北京市自动驾驶测试…

折叠屏就要来了,适配逼死 Android 开发?

1. 异型屏还没适配好&#xff0c;折叠屏就要来了&#xff0c;Android 的碎片化&#xff0c;让开发者又多掉了不少头发。 北京时间 11 月 8 日&#xff0c;三星在旧金山向开发者发布了一款可折叠屏幕手机。并表示&#xff0c;新技术需要开发者调整其 App&#xff0c;以确保在手机…

nginx虚拟目录配置

2019独角兽企业重金招聘Python工程师标准>>> 今天搞了N久的虚拟目录配置&#xff0c;在几乎要放弃的时侯偶然看到一篇文章&#xff0c;将我的问题搞定 原贴地址&#xff1a;http://blog.sina.com.cn/s/blog_6c2e6f1f0100l92h.html 我的需求是这样的&#xff0c;系…

阿里达摩院刷新纪录,开放域问答成绩比肩人类水平,超微软、Facebook

出品 | AI科技大本营&#xff08;ID:rgznai100&#xff09;近日&#xff0c;由阿里巴巴达摩院语言技术实验室研发的 Multi-Doc Enriched BERT 模型在微软的 MS MARCO 数 据评测任务&#xff0c;Passage Retrieval Task&#xff08;文档检索排序&#xff09;和 Q&A Task&…

解决windows7下vs2008不能正常编译ActiveX控件的问题

在windows7系统中&#xff0c;vs2008环境下用MFC ActiveX Control生成的控件不能正常编译&#xff0c;但是在xp系统中却能正常编译&#xff0c;解决方法&#xff1a; 1、在windows7中编译&#xff0c;提示错误为&#xff1a;fatal error LNK1000: Internal error during IncrB…

什么是shell【TLCL】

常用命令 datecaldf——report file system disk space usagefree——display amount of free and used memory in the systemexit——退出终端Ctrl-Alt-F1 到 Ctrl-Alt-F6 访问后台终端会话&#xff0c;AltF7返回图形桌面转载于:https://www.cnblogs.com/songdechiu/p/9943599…

Linux终端的几个常用快捷方式,记下!

一、初识linux的终端种类&#xff1a;本地、远程    查看本终端命令&#xff1a;     #tty 命令&#xff0c;看到当前所处的终端     #&#xff08;w&#xff09;who 命令&#xff0c;看到系统中所有登录的用户 其中&#xff0c;tty 终端为表示在本地命令行模式下打开…

从0到1 | 文本挖掘的传统与深度学习算法

一、什么是文本挖掘&#xff1f;讨论文本挖掘之前&#xff0c;我们要先说一下数据挖掘的概念&#xff0c;因为文本挖掘是数据挖掘的一个分支。数据挖掘&#xff08;Data Mining&#xff09;指从大量的数据中通过算法搜索隐藏在其中信息的过程。而文本挖掘就是从文本数据中获取有…

window7系统中64位安装matalbR2009b后出现乱码的解决方案

转自&#xff1a;http://blog.csdn.net/shaoguangleo/archive/2010/11/29/6042194.aspx MATLAB 中默认的字体是 Monospaced &#xff08;即等宽字体&#xff09;&#xff0c;这是一种非常适合用于显示程序源代码的字体。但Monospaced 是种逻辑字体&#xff0c;它在不同语言和操…

【电路】pmic芯片设计细节

VIO_IN供电https://e2e.ti.com/support/power-management/f/196/t/712146?tisearche2e-sitesearch&keymatchtps65916 Note that every GPIO will be configured as an input for the first 6ms after VCC is supplied, which is the time it takes for the device to init…

sql server 的一些记录

下面记录一些用到sql server查询时候用到的函数。 charindex,在一个表达式中搜索另一个表达式并返回其起始位置&#xff08;如果找到&#xff09;。http://msdn.microsoft.com/zh-cn/library/ms186323.aspx CHARINDEX ( expressionToFind ,expressionToSearch [ , start_locati…

[WPF] UserControl vs CustomControl

原文:[WPF] UserControl vs CustomControl介绍 WPF中有两种控件&#xff1a;UserControl和CustomControl&#xff0c;但是这两者有什么区别呢&#xff1f;这篇博客中将介绍两者之间的区别&#xff0c;这样可以在项目中合理的使用它们。 UserControl 将多个WPF控件(例如&#xf…

50行Python代码,获取公众号全部文章

作者 | 胖虎转载自Python3X&#xff08;ID: python3xxx &#xff09;爬取公众号的方式常见的有两种&#xff1a;通过搜狗搜索去获取&#xff0c;缺点是只能获取最新的十条推送文章。通过微信公众号的素材管理&#xff0c;获取公众号文章。缺点是需要申请自己的公众号。今天介绍…

解决Windows7下vs2008 Active control test container 不能运行的问题

按照&#xff1a;http://blog.csdn.net/fengbingchun/archive/2011/05/05/6398356.aspx 在windows7系统中&#xff0c;vs2008环境下用MFC ActiveX Control生成的控件不能正常编译&#xff0c;但是在xp系统中却能正常编译&#xff0c;解决方法&#xff1a; 1、在windows7中编译…

入门必备 | 一文读懂神经架构搜索

作者 | Md Ashiqur Rahman编译 | 刘静转载自图灵TOPIA&#xff08;ID: turingtopia&#xff09;近期谷歌大脑团队发布了一项新研究&#xff1a;只靠神经网络架构搜索出的网络&#xff0c;不训练&#xff0c;不调参&#xff0c;就能直接执行任务。这样的网络叫做WANN&#xff0c…

脚本化 tmux — LinuxTOY

脚本化 tmux — LinuxTOY脚本化 tmux2012-07-02 Toy Posted in TipsRSS昨天我在家试了下脚本化 tmux&#xff0c;其表现相当令人满意&#xff0c;只需稍加定制便可满足各种实际需要。这或许可以成为抛弃 GNU screen&#xff0c;改用 tmux 的又一个理由。该脚本先判断一个名为 c…

OpenCV像素点处理

转自&#xff1a;http://blog.csdn.net/hxgqh/archive/2011/02/23/6202001.aspx 获得像素点的值便可以更加灵活的进行图像处理&#xff0c;在OpenCV里可以通过cvGet2D()和cvSet2D()两个函数加上一个CvScalar结构体做到。OpenCV中&#xff0c;CvScalar结构为&#xff1a;typedef…

亲 , Zookeeper了解一下 : 概述

2019独角兽企业重金招聘Python工程师标准>>> 在学习的过程中,我们总需要一个来自灵魂的拷问: 为什么? 为什么会产生Zookeeper 这个问题有深度,那要从五百万年说起,在遥远的塞伯坦星球..... 扯远了... 在遥远在单机单服务的时代 , 想要扩展服务 , 只能增加硬件配置 …

wordpress jquery加载如何实现?

2019独角兽企业重金招聘Python工程师标准>>> 为什么写这篇文章&#xff1f; 因为之前在wordpress里面用jquery的时候没注意&#xff0c;这次因为要优化网站把没用的插件删了&#xff0c;结果发现有的jquery功能失效了&#xff0c;调试了许久才发现可能是jQuery没有定…

百度与华为重磅合作!李彦宏:技术是百度的信仰

导语&#xff1a;这是百度第三年举办AI开发者大会。一生二&#xff0c;二生三&#xff0c;三生万物。AI虽然不能产生万物&#xff0c;但是正在“唤醒万物”。 作者 | 阿司匹林 出品 | AI科技大本营&#xff08;ID:rgznai100&#xff09; 在今天上午举行的的百度AI开发者大…

已知空间一点到另外两点直线的距离

转自&#xff1a;http://www.cnblogs.com/clarkustb/archive/2008/11/04/1326500.html 已知空间一点到另外两点直线的距离设空间中的三点为M1,M2,M3,分别用矢量a,b表示方向向量M1M2和M1M3,则&#xff1a; 1. M3到M1,M2连线的距离为|axb|/|a|&#xff0c;这里|.|表示向量的…

vue---进行post和get请求

参考文档&#xff1a; https://www.jb51.net/article/125717.htm 使用axios <script src"https://unpkg.com/axios/dist/axios.min.js"></script> 基本使用方法&#xff1a; get请求&#xff1a; // Make a request for a user with a given ID axios.ge…

CxImage图像处理类库

转自&#xff1a;http://blog.csdn.net/byxdaz/archive/2009/04/10/4061324.aspx CxImage是一个可以用于MFC 的C图像处理类库类&#xff0c;它可以打开&#xff0c;保存&#xff0c;显示&#xff0c;转换各种常见格式的图像文件&#xff0c;比如BMP, JPEG, GIF, PNG, TIFF, MNG…

设计模式学习2 工厂模式

工厂模式其实就是简单模式的升级版本&#xff0c; 简单模式将界面与业务逻辑区分开&#xff0c;但是如果不停的增加计算器的运算方式&#xff0c;简单模式中的工厂Factory 中判断的业务逻辑会变非常复杂&#xff0c;这不符合封装的原则。 所以在此之上将Factory抽象了出来&…

输入字符串,包含数字,大小写字母,编程输出出现做多的数字的和

题目描述&#xff1a; 输入字符串&#xff0c;包含数字&#xff0c;大小写字母&#xff0c;编程输出出现做多的数字的和。 思路&#xff1a; 1.创建输入对象2.输入字符串3.利用正则将字母分离出&#xff0c;剩余的每一个字符串即为待统计的每一个数字&#xff0c;存入字符串数组…

优化思路千万种,基于下界函数的最优化效率如何?

作者丨stephenDC来源 | 大数据与人工智能&#xff08;ID:ai-big-data&#xff09;导读&#xff1a;生活中我们处处面临最优化的问题&#xff0c;比如&#xff0c;怎么样一个月减掉的体重最高&#xff1f;怎么样学习效率最高&#xff1f;怎么样可以最大化实现个人价值&#xff1…

Quintum 语音网关设置方法

Quintum 网关基本配置 Quintum 网关基本配置 登陆方式&#xff1a;方法一&#xff1a;串口登陆&#xff08;1&#xff09;&#xff0e;用配套的串口线连接网关的CONSOLE口和电脑的串口。 &#xff08;2&#xff09;&#xff0e;开启电脑的的超级终端&#xff0c;路径如下&#…