ভিজ্যুয়াল স্টুডিওতে তাত্ক্ষণিক উইন্ডোটি সাফ করার জন্য কোনও আদেশ আছে?
আমি সেখানে ডান ক্লিকের মেনুতে মাউসটি ধরতে পছন্দ করি না - বরং "ক্লাস" বা অন্য কিছু টাইপ করতে চাই।
উত্তর:
অবিলম্বে জানালা সাফ করতে, আপনি ব্যবহার করতে পারেন >cls
, যা একটি পূর্বনির্ধারিত হয় কমান্ড ওরফে করতে >Edit.ClearAll
।
এমএসডিএন নিবন্ধে সমস্ত পূর্বনির্ধারিত উপাধি তালিকাভুক্ত করা হয়েছে এবং আপনি নিজের নিজস্ব সংজ্ঞাও দিতে পারেন। (বনাম 2010 এবং তার আগে জন্য, কাস্টম alias লেখা একটি পৃথক প্রবন্ধে, যদিও বর্ণনা করা হয়।) মাধ্যমে স্ক্যান করা হচ্ছে, তাদের একটি সম্পূর্ণ বধ, এর মধ্যে কয়েকটি এমনকি MS-DOS এর DEBUG.EXE তাদের শিকড় (থাকতে পারে এর বিশেষভাবে >d
, >g
, >p
, >q
, এবং> মাথায় t
আসা)।
এটি লক্ষণীয়, কারণ এটি টিপতে কেবল দুটি কী রয়েছে: প্রসঙ্গ মেনু> সমস্ত সাফ করুন একই কমান্ডটি চাওয়া হয় এবং এটি কীবোর্ড ব্যবহার করে নেভিগেট করা যায়। অবিলম্বে উইন্ডোতে, আপনি টিপতে পারেন context-menu
, L
।
আপনি যদি একটি না থাকে তাহলে context-menu
কী আপনার কীবোর্ডের (আপনি কি জানেন, মধ্যবর্তী এক right-alt
এবং right-ctrl
), আপনি ব্যবহার করতে পারেন shift
+ + F10
পরিবর্তে।
>
গুরুত্বপূর্ণ। উত্তরে এটি আরও সুস্পষ্ট করার কোনও প্রাকৃতিক উপায় সম্পর্কে ভাবতে পারেনি। এছাড়াও আরও দরকারী টিপসের জন্য এমএসডিএন-তে তাত্ক্ষণিক উইন্ডো দেখুন।
>cls
এটা আমার জন্য মনে হচ্ছে।
রান সময়ে এটি কীভাবে করবেন তা এখানে:
আপনার আবেদনের এনভিডিটিই ডিএলগুলি উল্লেখ করুন।
তৈরি করুন এবং তারপরে প্রয়োজনীয় হিসাবে এই ফাংশনটি ব্যবহার করুন।
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
, ...
আপনার ভিজ্যুয়াল স্টুডিও সংস্করণ অনুযায়ী।
আমি সর্বশেষ উত্তরটি কেবল ভারব্যাটিম সম্পর্কে ব্যবহার করেছি এবং এটি কাজ করে, যদিও আমি যেখানে ছিল সেখানে ফোকাসটি চেয়েছিলাম। এখানে খুব সামান্য উন্নত সি # সংস্করণ। আমি এটি একটি কনফিগারেশন সুইচ দিয়ে সক্ষম।
#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! */ }