【Visual Studio】イミディエイトウィンドウをクリアするには

私が現在使用している Visual Studio は Visual Studio Community 2019 Version 16.1.3。

 

ある日ある時ある瞬間、私は[イミディエイトウィンドウ]の画面を消去したい(クリアしたい)衝動にかられた。

でも、[出力ウィンドウ]には[すべてクリア]ボタンがあるのに[イミディエイトウィンドウ]には該当するボタンが無いんだよねー。

だから、

そもそも[イミディエイトウィンドウ]をクリアすることができるの? できるならどうやってやるの? と疑問を持ったので調べた。

手動でクリアするには

結論を言うと、イミディエイトウィンドウで右クリックすれば[すべてクリア]が出てくるのでそれを選択すれば良い。

 

他にも下記のような方法があるようだが、前述のやり方が一番簡単な気がする。

  • [イミディエイトウィンドウ]で全選択して Delete キーを押す
  • [イミディエイトウィンドウ]に ">Edit.ClearAll" と入力して Enter を押す(大文字・小文字は区別されない)
  • [イミディエイトウィンドウ]に ">CLS" と入力して Enter を押す(大文字・小文字は区別されない)
  • キーボードのアプリケーションキー(メニューキー)を押してから L を押す
MEMO

アプリケーションキー(メニューキー)とはこのキーのこと。右側の Ctrl キーの左にあることが多い。

プログラムコードでクリアするには

プログラムコードから[イミディエイトウィンドウ]をクリアするには、まず [アセンブリ]>[拡張]から EnvDTE の参照を追加する。

上記ダイアログ内には EnvDTE という名前が2つあったり、似ている名前がたくさんあったりするけれど、今そのことを考えると面倒くさいので、私は見なかったことにすると決めた。

 

そして下記のコードを実行する。

Dim dte As EnvDTE.DTE = System.Runtime.InteropServices.Marshal.GetActiveObject("VisualStudio.DTE")

dte.Windows.Item("イミディエイト ウィンドウ").Activate 'Window.Caption のテキスト
dte.ExecuteCommand("CLS")

'こういうやり方もできるというサンプル
'dte.ExecuteCommand("Edit.SelectAll")
'dte.ExecuteCommand("Edit.ClearAll")

'ウィンドウを明示的に閉じておく場合
'dte.Windows.Item("イミディエイト ウィンドウ").Close

System.Runtime.InteropServices.Marshal.ReleaseComObject(dte)

 

購読する
通知を受け取る対象
guest
0 Comments
Inline Feedbacks
View all comments