Установите время задержки подсказки для конкретного компонента в Java Swing

Подход с лучшим повторным использованием мог бы заключаться в создании галочки с помощью класса CSS для псевдоэлемента ::before или ::after:

[110 ]
<button class="checkmark-after" type="button">I will display </button>

<p class="checkmark-before x2"> Done!</p>

<a href="http://example.com" class="checkmark-after bordered"> Google</a>

<p  class="checkmark-before x2 checkmark-after yellow bordered">Combined!</p>

25
задан SwiftArchitect 15 January 2016 в 23:28
поделиться

2 ответа

Ну, я бы порекомендовал выполнять нагрузку на процессор в другом потоке, чтобы он не прерывал обычные задачи с графическим интерфейсом.

Это было бы лучшим решением. (вместо того, чтобы пытаться обойти проблему)

* Редактировать * Вы можете вычислить подсказки для каждого слова в JEditorPane и сохранить их в Map. Тогда все, что вам нужно сделать, это получить доступ к подсказке из Map, если она изменится.

В идеале люди не будут двигать мышь и печатать одновременно. Таким образом, вы можете вычислить всплывающие подсказки при изменении текста и просто вытянуть их из Map в mouseMoved().

7
ответ дан jjnguy 28 November 2019 в 21:19
поделиться

Вы можете показать всплывающее окно самостоятельно. Прослушайте события mouseMoved (), запустите / остановите таймер, а затем отобразите всплывающее окно со следующим кодом:

Сначала вам понадобятся PopupFactory, Popup и ToolTip:

private PopupFactory popupFactory = PopupFactory.getSharedInstance();
private Popup popup;
private JToolTip toolTip = jEditorPane.createToolTip();

, чтобы показать или спрятать подсказку:

private void showToolTip(MouseEvent e) {
    toolTip.setTipText(...);
    int x = e.getXOnScreen();
    int y = e.getYOnScreen();
    popup = popupFactory.getPopup(jEditorPane, toolTip, x, y);
    popup.show();
}

private void hideToolTip() {
    if (popup != null)
        popup.hide();
}

Это даст вам настраиваемую задержку и массу неприятностей:)

4
ответ дан Denis Tulskiy 28 November 2019 в 21:19
поделиться
Другие вопросы по тегам:

Похожие вопросы: