青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

桃源谷

心靈的旅行

人生就是一場旅行,不在乎旅行的目的地,在乎的是沿途的風景和看風景的心情 !
posts - 32, comments - 42, trackbacks - 0, articles - 0
  C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

在Visual Studio定制新的注釋格式

在本文中,使用Visual Studio2003作為例子來描述宏的做成步驟。(我想在Visual Studio2005、2008中也應該是一樣的)  
     
在編寫ASP代碼時,可以使用單引號來注釋掉不要的代碼。在Visual Studio的IDE環境中也支持使用塊注釋的方式把一整段的代碼注釋掉。  
不過有的時候,也有要求用<%' ~ %>這種注釋格式來注釋掉HTML中的代碼,但是包括Visual Studio在內的一些流行的編輯器都不支持這種格式的注釋方式。不過還好,Visual Studio的IDE支持宏的功能,因此我們可以使用VBScript宏來定制任意格式的代碼注釋。
例如:
<%' if(LengthB(frmMe.txtUserCd.value) > <%= LENGTH_USR_CD %><%'){ %>
<%'  alert("使用者的ID長度有誤"); %>
<%'  frmMe.txtUserCd.focus(); %>
<%'  return false; %>
<%' } %>
 if(LengthB(frmMe.txtUserCd.value) > <%= LENMAX_USR_CD %>){
  alert(
"使用者的ID長度有誤");
  frmMe.txtUserCd.focus();
  return 
false;
 }

在JavaScript代碼中使用<% ~ %>可以隱藏其間的代碼。因此,在網頁代碼中有很多的地方就存在<% ~ %>的符號,  
  也就是說<% ~ %>和我們要添加的注釋<%' ~ %>格式有沖突。    
  其中,值得注意的地方是,這種注釋格式在每遇到一個%>符號時要新添加一個<%',而不是簡單的在一行的首尾添加<%' ~ %>

 

1. 打開宏編輯器(Macros IDE)  
  1.1 啟動Visual Studio 2005之后,從主菜單中選擇:  
     Tools → Macros → Macros 



1.2 點擊菜單選項“Macros IDE“后,Microsoft Visual Studio Marcos這個編輯器就會啟動。    
  1.3 如果這是第一次編輯宏的話,此時隨著編輯器的啟動,一個叫做“My Macros“的工程自動會被打開  
      在工程"My Macros"中應該有兩個模塊,一個是EnvironmentEvent ,另一個是 Module1    
  1.4 咱們可以選擇任何一個模塊來添加宏代碼。這里我們選擇 Module1,雙擊模塊名字則進入到編輯模式。
                該模塊中只有4行代碼.每行代碼都有用,請不要刪除.


其中,Imports EnvDTE 這句非常有用,后面用到的幾乎所有的對象都出自EnvDTE這個命名空間。  
      DTE 是Development Tools Enviroment的縮寫。

2.1 在“Public Module Module1“和“End Module“之間,寫入以下的代碼
2. 在宏編輯器中寫入創建注釋的VBScript代碼  
 
 
         首先,為了能給一段代碼添加注釋,我們要做成AddHTMLcomment()函數


圖片中的代碼如下所示,請原樣拷貝到Module1中
Sub AddHTMLcomment()   
          
'得到當前文檔中被用戶選擇的代碼片斷   
          Dim selection As TextSelection = DTE.ActiveDocument.Selection()   
          
'創建一個編輯點,用于指示在被選擇的代碼片斷中的修改位置。類似于C語言中的指針   
          Dim start As EditPoint = selection.TopPoint.CreateEditPoint()   
          
'得到已選擇的代碼片斷的終點   
          Dim endpt As TextPoint = selection.BottomPoint   
  
          
'在當前文檔中打開Undo功能   
          DTE.UndoContext.Open("Comment Region")   
  
          Try   
              
'在一行代碼中如果出現一個注釋尾"%>",則在它后面插入一個注釋頭"<%'"   
              Dim objMovePt As EditPoint   
              
Do While start.FindPattern("%>", , objMovePt)   
                  
If objMovePt.GreaterThan(endpt) Then   
                      
Exit Do   
                  
End If   
                  start.MoveToPoint(objMovePt)   
                  start.Insert(
"<%'")   
              
Loop   
  
              
'在一行的行首和行尾分別插入注釋頭和注釋尾   
              start = selection.TopPoint.CreateEditPoint()   
              
Do While (start.LessThan(endpt))   
                  
'在這里插入注釋頭   
                  start.Insert("<%' ")   
  
                  
'在行尾插入注釋尾   
                  start.EndOfLine()   
                  start.Insert(
" %>")   
  
                  start.LineDown()   
                  start.StartOfLine()   
              
Loop   
          Finally   
              
'If an error occured, then need to make sure that the undo context is cleaned up.   
              'Otherwise, the editor can be left in a perpetual undo context   
              DTE.UndoContext.Close()   
          
End Try   
  
      
End Sub 
其中,該函數分兩個部分,第一個部分是先查找選擇的代碼片斷中是否存在注釋尾,如果    
  存在的話,則在它后面插入一個注釋頭。函數FindPattern是編輯點對象中的一個查找函數。  
  該函數有三個參數:第一個是要查找的對象(一般是字符串),第三個則是如果找到該字符串,  
  則指示該字符串后面的第一個字符在代碼片斷中的位置,也是一個編輯點對象。第二個參數我們不用關心,  
  調用時什么也不寫即可。第二個部分則是遍歷每一個行,在行首和行尾插入注釋頭和注釋尾    
     
 
  此后,為了可以刪除代碼中的注釋, 我們要增加DelHTMLcomment()函數  
    把下面的代碼原樣的拷貝到Module1中
Sub DelHTMLcomment()   
          
Dim selection As TextSelection = DTE.ActiveDocument.Selection()   
          
Dim start As EditPoint = selection.TopPoint.CreateEditPoint()   
          
Dim endpt As TextPoint = selection.BottomPoint   
  
          DTE.UndoContext.Open(
"Comment Region")   
  
          Try   
              
'刪除代碼中的所有注釋頭   
              Dim objMovePt As EditPoint   
              
Do While start.FindPattern("<%'", , objMovePt)   
                  
If objMovePt.GreaterThan(endpt) Then   
                      
Exit Do   
                  
End If   
  
                  start.Delete(
3)   
              
Loop   
  
              
'只刪除行尾的注釋尾   
              start = selection.TopPoint.CreateEditPoint()   
              
Do While (start.LessThan(endpt))   
                  
Dim len As Long = start.LineLength()   
                  
Dim num As Long = start.Line()   
  
                  start.MoveToLineAndOffset(num, 
len - 2)   
                  
If start.GetText(3<> " %>" Then   
                      
MsgBox("L" & num & "行的最后幾個字符不是  %> ,請按CTRL+Z恢復原來的代碼!")   
                      
Exit Do   
                  
End If   
  
                  start.Delete(
3)   
  
                  start.LineDown()   
                  start.StartOfLine()   
              
Loop   
          Finally   
              
'If an error occured, then need to make sure that the undo context is cleaned up.   
              'Otherwise, the editor can be left in a perpetual undo context   
              DTE.UndoContext.Close()   
          
End Try   
  
      
End Sub 
  該函數分兩個部分,第一個部分把代碼中的所有注釋頭全部刪掉,第二部分則是刪除注釋尾。  
  與AddHTMLcomment()相比,邏輯稍微簡單一些。其中稍微值得注意的地方是,該函數對行尾有  
  特殊要求,即在行尾的最后三個字符必須是注釋尾    
     
 
 
3. 請存盤后關閉宏編輯器  
  3.1 請按「Ctrl+S」鍵,然后從主菜單"File"中選擇"Close And Return"關閉編輯器




4. 打開Visual Studio的“Macro Explorer“  
  4.1 在主菜單中作以下的選擇  
      View → Other Windows → Macros Explorer


4.2 此時、在Visual Studio IDE的右側則會出現Marcos Explorer樹狀列表


5. 選擇完整的一段代碼給它添加注釋以及取消注釋  
  5.1 用鼠標選擇要添加注釋的代碼


5.2 雙擊Macros Explorer樹中的AddHTMLcomment項目即可給這段代碼添加注釋


5.3 如果想取消注釋,則雙擊Macros Explorer樹中的DelHTMLcomment項目即可為選擇的代碼取消所加的注釋

我的個人簡歷第一頁 我的個人簡歷第二頁
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            欧美成人午夜| 在线日韩av| 久久深夜福利免费观看| 亚洲欧美日韩在线播放| 亚洲欧美在线aaa| 欧美在线高清视频| 久久一区免费| 欧美极品aⅴ影院| 欧美午夜大胆人体| 国产九九精品视频| 国内精品美女在线观看| 亚洲国产精品一区| 正在播放亚洲| 欧美资源在线观看| 欧美激情精品久久久久久变态| 亚洲激情网站| 亚洲美女在线视频| 午夜久久99| 欧美黑人在线观看| 国产欧美va欧美va香蕉在| 亚洲电影成人| 亚洲免费中文| 亚洲第一在线综合在线| 亚洲小视频在线观看| 久久午夜精品一区二区| 欧美日韩亚洲一区二区| 在线观看的日韩av| 亚洲欧洲av一区二区三区久久| 麻豆亚洲精品| 午夜精品一区二区三区在线播放| 欧美gay视频激情| 国产亚洲一本大道中文在线| 99国产精品久久久久老师| 久久精品中文字幕免费mv| 亚洲精品少妇网址| 久久综合久久久| 国产日韩欧美在线看| 亚洲一区二区av电影| 亚洲高清视频中文字幕| 欧美一区二区三区啪啪| 国产精品久久久一本精品| 亚洲精品一区在线观看| 巨乳诱惑日韩免费av| 亚洲一区二区三区欧美 | 中文一区二区在线观看| 久久综合精品国产一区二区三区| 99在线|亚洲一区二区| 女人色偷偷aa久久天堂| 精品成人在线视频| 久久久久久97三级| 午夜精品久久久久久久男人的天堂| 欧美精品99| 亚洲精品乱码久久久久久日本蜜臀 | 亚洲韩国一区二区三区| 欧美亚洲综合另类| 国产精品女人网站| 亚洲欧美日韩国产综合在线 | 久久精品视频在线看| 国产精品腿扒开做爽爽爽挤奶网站| 夜夜精品视频| 99视频一区| 国产精品久久久久一区二区三区| 一区二区三区视频观看| 日韩一区二区精品视频| 国产精品白丝av嫩草影院| 亚洲伊人观看| 亚洲一区二区三区高清 | 欧美日韩精品欧美日韩精品一 | 欧美一区三区二区在线观看| 国产精品丝袜91| 久久国产精品99精品国产| 亚洲欧美中文日韩在线| 国产亚洲成年网址在线观看| 久久久久久一区二区三区| 久久国产日韩| 亚洲精品视频在线观看免费| 亚洲精品日韩在线| 国产麻豆精品久久一二三| 久久久青草婷婷精品综合日韩| 久久久999| 亚洲精品乱码视频| 国产精品99久久久久久人 | 一区二区三区**美女毛片| 亚洲精品乱码久久久久久黑人| 欧美日韩综合| 玖玖在线精品| 欧美日韩一区二区三区在线观看免 | 欧美成人免费小视频| 欧美国产欧美亚州国产日韩mv天天看完整 | 欧美日韩国产页| 欧美一区二区三区在线观看| 久久久久九九九| 一区二区三区视频在线| 欧美一区二区在线| 亚洲最新视频在线| 午夜伦欧美伦电影理论片| …久久精品99久久香蕉国产| 亚洲精品日韩综合观看成人91| 国产精品亚洲综合天堂夜夜| 美女尤物久久精品| 欧美视频专区一二在线观看| 蜜臀a∨国产成人精品| 亚洲午夜av| 欧美成人a视频| 亚洲一区二区精品视频| 久久久久久97三级| 亚洲一区二区免费视频| 久久午夜国产精品| 欧美尤物巨大精品爽| 欧美精品一区二区三区在线播放| 久久精品动漫| 国产精品久久久久久av下载红粉| 欧美91精品| 国产欧美日韩精品专区| 亚洲精品视频一区| 亚洲啪啪91| 久久尤物视频| 久久久夜夜夜| 国产精品一区久久久| 99精品国产一区二区青青牛奶| 亚洲国产第一| 免费不卡视频| 久久久久久久一区二区三区| 欧美午夜无遮挡| 日韩视频欧美视频| 亚洲欧洲综合另类| 男人插女人欧美| 欧美激情国产日韩| 亚洲国产精品成人精品| 久久久久久久成人| 另类亚洲自拍| 伊人久久综合97精品| 欧美在线视屏 | 亚洲第一综合天堂另类专| 国产日韩精品在线播放| 亚洲午夜精品久久| 欧美一区在线直播| 国产日韩三区| 欧美一区视频| 你懂的一区二区| 亚洲人成网站在线观看播放| 免费欧美电影| 亚洲激情在线| 中文在线资源观看网站视频免费不卡 | 亚洲小说欧美另类社区| 欧美日韩国产限制| 亚洲一区二区成人| 久久久久久久国产| 亚洲高清资源综合久久精品| 欧美成人精品福利| 亚洲精选一区| 午夜日韩av| 樱桃国产成人精品视频| 美女被久久久| 一区二区三区高清在线| 欧美在线观看一区二区| 激情综合色综合久久| 欧美jizzhd精品欧美巨大免费| 亚洲国产影院| 亚洲欧美日韩区| 黑人极品videos精品欧美裸| 久久综合九色欧美综合狠狠| 亚洲欧洲精品一区二区三区波多野1战4| av成人动漫| 国产综合18久久久久久| 国产精品久久久久久亚洲调教| 老鸭窝91久久精品色噜噜导演| 嫩草国产精品入口| 一个色综合av| 国产亚洲欧美一区| 欧美二区在线看| 亚洲在线观看| 欧美国产高潮xxxx1819| 亚洲女爱视频在线| 在线成人小视频| 欧美日韩精品在线播放| 香蕉亚洲视频| 99国产精品一区| 免费在线欧美黄色| 亚洲欧美日韩在线观看a三区| 国产主播一区二区三区| 欧美成人亚洲成人| 久久国产手机看片| 日韩视频在线观看免费| 久热精品视频在线观看| 亚洲少妇在线| 91久久视频| 国产在线拍偷自揄拍精品| 欧美日韩亚洲91| 蜜乳av另类精品一区二区| 亚洲综合不卡| 亚洲免费观看在线视频| 欧美成人视屏| 老鸭窝亚洲一区二区三区| 香蕉久久久久久久av网站| 一本色道久久综合亚洲91| 亚洲国产成人久久综合一区| 国内精品国语自产拍在线观看| 国产精品久久影院| 国产精品magnet|