弹出Content Assist shell后将无法输入

问题描述 投票:0回答:1

我已使用以下代码在文本框中附加了内容辅助。内容助手工作正常。但是,一旦按下“ Ctrl +空格键”,所有的建议都将显示在新创建的外壳中。然后,我尝试键入更多字符,但是由于新的外壳程序具有焦点而不是文本框,所以我无法键入字符。

有没有一种方法可以使JDT编辑器发挥作用?即使按了Ctrl +空格键,并且显示了内容建议,我们仍然可以在编辑器中键入内容,并且根据新字符缩小建议的范围。

private void attachContentAssist(final Text propertyText) {
   ContentProposalAdapter contentProposalAdapter = new ContentProposalAdapter(propertyText, new TextContentAdapter(),
        this.proposalProvider, KeyStroke.getInstance("Ctrl+Space"), null);
   contentProposalAdapter.setLabelProvider(new ContentProposalLabelProvider());
   contentProposalAdapter.setPropagateKeys(false);
   contentProposalAdapter.setProposalAcceptanceStyle(ContentProposalAdapter.PROPOSAL_REPLACE);
}
eclipse eclipse-plugin
1个回答
0
投票

行:

contentProposalAdapter.setPropagateKeys(false);

是在打开弹出窗口时接收到的停止键被转发到Text控件,这就是停止键入的工作。

要么指定true,要么删除该行,因为默认为true

© www.soinside.com 2019 - 2024. All rights reserved.