2009-10-25 6 views

Répondre

0

Vous pouvez utiliser la méthode getCursorPosition() de AbstractTextEditor

+1

Mais cette méthode est protégée. Comment peut-on l'invoquer? – Lii

+0

Non seulement il est protégé, mais il renvoie aussi une chaîne "description de la position du curseur", ce qui n'est pas du tout ce que l'OP demandait. –

1

Je ne suis pas sûr de ce que vous entendez dans « show de dialogue pop-up à ce stade », mais faire quelque chose comme ceci:

IEditorPart editor = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().getActiveEditor(); 
if (editor instanceof ITextEditor) { 
    ISelectionProvider selectionProvider = ((ITextEditor)editor).getSelectionProvider(); 
    ISelection selection = selectionProvider.getSelection(); 
    if (selection instanceof ITextSelection) { 
    ITextSelection textSelection = (ITextSelection)selection; 
    int offset = textSelection.getOffset(); // etc. 
    } 
} 

de bien sûr, dans le code de production faire des vérifications nuls, etc.

+0

J'ai besoin de (X, Y) point (en pixels) pour afficher une boîte de dialogue contextuelle et je veux l'afficher sous le curseur de texte comme le popup de complétion de code. Dans votre code, vous obtenez un décalage de texte dans les symboles, comment convertir ce décalage en points en pixels. Ou peut-être existe une autre façon d'afficher une fenêtre sous le curseur de texte? –

Questions connexes