setCursor для контейнера без изменения курсора подкомпонентов - PullRequest
1 голос
/ 01 июня 2010
JPanel panel = new JPanel(null);
panel.setSize(400, 400);
panel.add(new JButton("Test"));
panel.setCursor(Cursor.getCursor(Cursor.SOMETHING_SOMETHING_CURSOR));

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

Есть ли способ, например, переопределить метод в JPanel или что-то в этом роде? Метод «Содержит» где-то используется для определения необходимости установки курсора. Могу ли я обмануть это, думая, что мышь не находится в контейнере, если она действительно находится во вложенном компоненте? Любой другой изящный маленький трюк?

1 Ответ

1 голос
/ 01 июня 2010

Могу ли я обмануть это, думая, что мышь не в контейнере, если она действительно в подкомпоненте?

Возможно, на вашей панели вы можете использовать MouseListener. На mouseEntered вы устанавливаете курсор. На mouseExited вы устанавливаете курсор на ноль.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...