web-dev-qa-db-ja.com

Ctrlキーを押しながらIntelliJでクリックして、宣言/実装を開きますIDEA

詳細:

  • [〜#〜] ide [〜#〜]:IntelliJ IDEA 14
  • O.S.::Windows 7

メソッドのdeclarationに移動する場合は、次のアプローチのいずれかを選択できます。

  • 押す Ctrl +左クリック
  • 右クリック> [移動]> [宣言]
  • 押す Ctrl + B

メソッドの実装に移動する場合、次のアプローチのいずれかを選択できます。

  • 押す Ctrl + Alt +左クリック
  • 右クリック> [移動]> [実装]
  • 押す Ctrl + Alt + B

Eclipseで、押すと Ctrl マウスがメソッドの上にあると、ポップアップが表示され、何をするかを選択できます(実装/宣言に進みます)。 「左クリック」( Ctrl が押されたまま)最初のオプションが選択されます。

enter image description here

IntelliJ IDEAで同じ/同様の動作を実現するにはどうすればよいですか?

34

このための組み込みオプションはありません。そのためには、カスタムクイックリストを構成する必要があります。

  1. [設定]ダイアログを開き、[クイックリスト]に移動します(IDEA 14)の[外観と動作]にあります)
  2. 追加ボタンをクリックします enter image description here 中央のペインの右側に
  3. リストに名前を付けます
  4. 追加ボタンをクリックします enter image description here 一番右のペインの右側(「アクションなし」と表示されています)
  5. Go to Declarationアクションを追加します(Main Menu> Navigate> Go to Declaration
  6. Go to Implementation(s)アクションを追加します(Main Menu> Navigate> Go to Implementation(s)
  7. 適用をクリックします
  8. 設定でキーマップに移動します
  9. [クイックリスト]ノードの下で、作成したクイックリストを見つけて、ショートカット(キーボードまたはマウス)をマップします。もちろん、宣言へ移動または実装へ移動アクションで使用されるショートカットの1つを再マップできます。
  10. [OK]をクリックして設定を閉じ、試してみます。

表示されるクイックリストでは、各アクションの横にクイック選択用の数字が表示されます。

編集:最終的なクイックリストのスクリーンショットを追加してわかりやすくします

enter image description here

45
Javaru

Eclipseでも慣れていたので、同じものを探していました。それにもかかわらず、99%のケースで、私は実装に行きました。それもあなたの場合は、IntelliJでCtrlキーを押しながらクリックショートカットを変更することを検討できます。

  • ファイルを開く→設定...→キーマップ
  • 「実装」を検索し、リスト内のアイテム「メインメニュー→ナビゲート→実装」を特定します
  • アイテムを右クリックし、「マウスショートカットの追加」を選択します
  • ウィンドウをCtrlキーを押しながら左クリックして、Ctrlキーを押しながらクリックしてショートカットを追加します。
  • [OK]ボタンを押すと、2つの選択肢があります。
    • 既存のショートカットを削除します(宣言を開きます)
    • 既存のショートカットを残す:その場合、Ctrlキーを押しながらクリックすると、宣言と実装の両方が開かれます(少なくともそれらが異なるファイルにある場合)

私はこの答えが2年遅すぎることを知っていますが、うまくいけば他の人に役立つかもしれませんか?

EDIT:このショートカットは、スーパークラスの宣言に移動する場合にも適用されます。したがって、最初に上記で宣言した「99%」は少し低下します。宣言に移動するショートカットとしてctrl +右クリックを追加しました(これは他のショートカットと競合しません-ただし、少なくとも2つのボタンを持つマウスが必要です...)。

14
Nedorot

メソッドを選択してCtrl+Tメソッドの実装が表示されます。オプションをクリックして、実装されたメソッドに移動できます。お役に立てれば。

5
Sabarish

私のIntelliJ(2016.2)は、実装ポップアップの実装の1つとして、メソッドの宣言(PHPインターフェイス)を示しています。

0
David Mann