1

選択したコードがメソッド、関数、変数であるかどうかをどのように識別できますか...???

public class Modifiers implements IObjectActionDelegate{
private Shell shell;

public void run(IAction action) {
    SelectedText selectedText;      
    IEditorPart editor = getActiveEditor();

    if (editor instanceof AbstractTextEditor) {
        selectedText = getSelectedText(editor);

        //HOW TO IDENTIFY THE SELECTED CODE         
    }
}

public void selectionChanged(IAction action, ISelection selection) {        
}

public void setActivePart(IAction action, IWorkbenchPart targetPart) {
    shell = targetPart.getSite().getShell();
}

private IEditorPart getActiveEditor() {
    return Activator.getDefault().getWorkbench().getActiveWorkbenchWindow()
            .getActivePage().getActiveEditor();
}

private SelectedText getSelectedText(IEditorPart editor) {
    SelectedText selectedText;

    try {
        final ISelection selection = editor.getEditorSite().getSelectionProvider().getSelection();
        final ITextSelection textSelection = (ITextSelection) selection;
        selectedText = new SelectedText(textSelection.getText(), textSelection.getOffset(), textSelection.getLength());
    } catch (Exception e) {
        selectedText = new SelectedText("", 0, 0);
    }
    return selectedText;
}

}

ご覧のとおり、選択したコードが にありselectedTextます。ここで知りたいのは、その変数のコードがメソッド、変数、またはそれに含まれるものであるかどうかをどのように識別できるかです。

Eclipse でリファクタリングを行うと、選択したコード情報が表示されます。アイデアは、そのようなことをすることです。

ご協力いただきありがとうございます。

4

1 に答える 1

0

私が正しければ、詳細を取得したいコード上でマウスポインタを動かすだけで、静的変数の場合など、特定の記号を含む詳細を含むポップアップウィンドウが表示されます。シンボルまたはアイコン。

異なる2文字を含む各記号を注意深く見てください。色には独自の意味があります。つまり、パブリックの場合は緑、プライベートの場合は赤ローカルの場合は灰色などです。

于 2013-01-15T14:02:11.253 に答える