क्या विजुअल स्टूडियो में तत्काल विंडो को खाली करने की आज्ञा है?
मैं एक राइट क्लिक मेनू के लिए माउस को हथियाने से नफरत करता हूं - बल्कि "cls" या कुछ और टाइप करना होगा।
क्या विजुअल स्टूडियो में तत्काल विंडो को खाली करने की आज्ञा है?
मैं एक राइट क्लिक मेनू के लिए माउस को हथियाने से नफरत करता हूं - बल्कि "cls" या कुछ और टाइप करना होगा।
जवाबों:
तत्काल विंडो को खाली करने के लिए, आप उपयोग कर सकते हैं >cls
, जो एक पूर्वनिर्धारित कमांड उर्फ है >Edit.ClearAll
।
MSDN आलेख सभी पूर्वनिर्धारित उपनामों को सूचीबद्ध करता है और आप अपने स्वयं के भी परिभाषित कर सकते हैं। (VS 2010 और इससे पहले के लिए, कस्टम उपनाम एक अलग लेख में, हालांकि बताया गया है।) के माध्यम से स्कैन, उनमें से एक पूरी धसान, जिनमें से कुछ भी MS-DOS DEBUG.EXE में अपनी जड़ें (हो सकता है है विशेष रूप से >d
, >g
, >p
, >q
, और ( t
मन में आया)।
यह भी ध्यान देने योग्य है, क्योंकि इसे दबाने के लिए केवल दो कुंजी हैं: संदर्भ मेनू> सभी को एक ही आदेश देता है और इसे कीबोर्ड का उपयोग करके नेविगेट किया जा सकता है। तत्काल विंडो में, आप भी दबा सकते हैं context-menu
, L
।
यदि आपके पास अपने कीबोर्ड पर कोई context-menu
कुंजी नहीं है (आप जानते हैं, जो बीच में है right-alt
और right-ctrl
), तो आप इसके बजाय shift
+ का उपयोग कर सकते हैं F10
।
>
महत्वपूर्ण है। उत्तर में इसे और अधिक स्पष्ट करने के लिए एक प्राकृतिक तरीके के बारे में नहीं सोच सकता था। इसके अलावा, अधिक उपयोगी सुझावों के लिए MSDN पर तत्काल विंडो देखें ।
>cls
मेरे लिए ऐसा लगता है।
मिल गया...
"> Edit.ClearAll"
या
"> Cls"
यहां बताया गया है कि इसे रन टाइम पर कैसे करें:
अपने आवेदन में EnvDTE dll का संदर्भ लें।
बनाएं और फिर इस फ़ंक्शन का उपयोग आवश्यकतानुसार करें।
Public Sub ClearImmediateWindow()
Try
Dim vsWindowKindImmediateWindow As String _
= "{ECB7191A-597B-41F5-9843-03A4CF275DDE}"
Try
Dim obj As Object = System.Runtime.InteropServices.Marshal._
GetActiveObject("VisualStudio.DTE.10.0")
If obj IsNot Nothing Then
Dim DTE2 As EnvDTE80.DTE2 = CType(obj, EnvDTE80.DTE2)
For Each wndw As EnvDTE.Window In DTE2.Windows
If wndw.ObjectKind = vsWindowKindImmediateWindow Then
wndw.Activate()
DTE2.ExecuteCommand("Edit.ClearAll")
Exit For
End If
Next
End If
Catch comEx As COMException
' Not running from within the VS IDE?
Catch ex As Exception
Throw ex
End Try
Catch ex As Exception
' Handle this as you desire.
End Try
End Sub
End Sub
VisualStudio.DTE.10.0
दिया VisualStudio.DTE.11.0
और इसने काम किया। यहाँ भी मुझे एक ही उत्तर का एक छोटा वाक्यविन्यास मिला: http://stackoverflow.com/a/16873888/2721611
दृश्य स्टूडियो 2012 के लिए मैं उपयोग करता हूं:
Public Sub ClearImmediateWindow()
Dim dte As EnvDTE80.DTE2 = Marshal.GetActiveObject("VisualStudio.DTE.11.0")
dte.Windows.Item("Immediate Window").Activate() 'Activate Immediate Window
dte.ExecuteCommand("Edit.SelectAll")
dte.ExecuteCommand("Edit.ClearAll")
Marshal.ReleaseComObject(dte)
End Sub
कोड से तत्काल विंडो को स्वचालित रूप से साफ़ करने के लिए (परियोजना में DTE संदर्भ जोड़ने की आवश्यकता है)। अगर यह काम करता कोशिश नहीं VisualStudio.DTE.8.0
, VisualStudio.DTE.9.0
, ...
अपने दृश्य स्टूडियो संस्करण के अनुसार।
मैंने अंतिम उत्तर का उपयोग केवल शब्दशः के बारे में किया और यह काम करता है, हालाँकि मैं चाहता था कि फोकस वापस वहीं पर हो जहाँ वह था। यहाँ बहुत ही बेहतर C # संस्करण है। मैं इसे एक कॉन्फ़िगरेशन स्विच के साथ सक्षम करता हूं।
#if DEBUG
if (GetIni("Debug", "ClearImmediateWindow", true)) {
try {
var dte = (EnvDTE.DTE) Marshal.GetActiveObject("VisualStudio.DTE.15.0");
var me = dte.ActiveWindow;
dte.Windows.Item("Immediate Window").Activate();
dte.ExecuteCommand("Edit.ClearAll");
me.Activate();
}
catch { /* Meh! */ }