Форум программистов, компьютерный форум, киберфорум
Java: GUI, Графика
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.82/11: Рейтинг темы: голосов - 11, средняя оценка - 4.82
50 / 50 / 42
Регистрация: 06.09.2013
Сообщений: 188
1

При наведении на кнопку курсора мыши исчезает надпись, и это только при использовании swing

30.07.2014, 21:57. Просмотров 2064. Ответов 5
Метки нет (Все метки)

Доброго времени суток! У меня такая возникла проблема, в общем, создаю фрейм с кнопками, лейблами и чехбоксом, все работает отлично, но!!! при наведении на кнопку курсора мыши исчезает надпись, и это только при использовании swing, при использовании awt такого не было замечено... в чем может быть проблема? IDE: Intelij IDEA 13.1.4, OS: Windows 8, java version: 1.8.0_05

Вот собственно код, может кто у себя потестит:

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
 
public class Test extends JFrame {
 
    public Test(String title) {
        super(title);
 
        JPanel panel = new JPanel(new GridBagLayout());
 
        JLabel label = new JLabel(new ImageIcon("C:\\Users\\1\\Desktop\\image.gif"));
        panel.add(label, new GridBagConstraints(0, 0, 1, 2, 0, 1, GridBagConstraints.NORTHWEST, GridBagConstraints.NONE, new Insets(5, 5, 5, 5), 0, 0));
 
        panel.add(new JLabel("First name:"), new GridBagConstraints(1, 0, 1, 1, 0, 0, GridBagConstraints.NORTHEAST,
                GridBagConstraints.NONE, new Insets(5, 5, 0, 5), 0, 0));
 
        panel.add(new JTextField("<enter first name here>", 30), new GridBagConstraints(2, 0, 2, 1, 0, 0, GridBagConstraints.WEST,
                GridBagConstraints.HORIZONTAL, new Insets(5, 5, 0, 5), 0, 0));
 
        panel.add(new JLabel("Last name:"), new GridBagConstraints(1, 1, 1, 1, 0, 0, GridBagConstraints.NORTHEAST,
                GridBagConstraints.NONE, new Insets(0, 5, 5, 5), 0, 0));
 
        panel.add(new JTextField("<enter last name here>", 30), new GridBagConstraints(2, 1, 2, 1, 1, 0, GridBagConstraints.NORTHWEST,
                GridBagConstraints.HORIZONTAL, new Insets(5, 5, 5, 5), 0, 0));
 
        JButton ok = new JButton("Ok");
        JButton can = new JButton("Cancel");
        ok.setPreferredSize(can.getPreferredSize());
        ok.setMinimumSize(ok.getPreferredSize());
 
        panel.add(ok, new GridBagConstraints(2, 2, 1, 1, 1, 0, GridBagConstraints.LINE_END,
                GridBagConstraints.NONE, new Insets(0, 0, 5, 5), 0, 0));
 
        panel.add(can, new GridBagConstraints(3, 2, 1, 1, 0, 0, GridBagConstraints.CENTER,
                GridBagConstraints.NONE, new Insets(0, 0, 5, 5), 0, 0));
 
        JCheckBox box = new JCheckBox("Right-to-Left Orientation");
        panel.add(box , new GridBagConstraints(0, 3, 2, 1, 0, 0, GridBagConstraints.SOUTHWEST,
                                                            GridBagConstraints.NONE, new Insets(0, 5, 5, 5), 0, 0));
 
        box.addItemListener(new ItemListener() {
            @Override
            public void itemStateChanged(ItemEvent e) {
                panel.setComponentOrientation(box.isSelected() ?
                                ComponentOrientation.RIGHT_TO_LEFT : ComponentOrientation.LEFT_TO_RIGHT);
 
                panel.doLayout();
            }
        });
 
        ActionListener listener = new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
 
                JFrame frame = new JFrame("Frame_1");
 
                frame.setLayout(new BorderLayout());
                frame.add(new JLabel("You press " + e.getActionCommand()), BorderLayout.CENTER);
                frame.setSize(new Dimension(200, 200));
                frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
                frame.setVisible(true);
            }
        };
 
        ok.addActionListener(listener);
        can.addActionListener(listener);
 
        this.add(panel);
        setResizable(false);
        setSize(new Dimension(400, 200));
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    }
 
    public static void main(String[] args) {
 
        new Test("Frame").setVisible(true);
    }
}
и прилагаю скрины окон для наглядности моей проблемы
0
Миниатюры
При наведении на кнопку курсора мыши исчезает надпись, и это только при использовании swing   При наведении на кнопку курсора мыши исчезает надпись, и это только при использовании swing  
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
30.07.2014, 21:57
Ответы с готовыми решениями:

Изменение курсора мыши при наведении на кнопку
А как сделать, чтобы курсор мыши менялся при наведении на кнопку? Как при наведении на ссылку. ...

При наведении курсора мыши на одну кнопку, подсвечивается и другая
Сайт залил на хостинг - http://anime-test.e3w.ru . Суть проблемы изложена в названии темы. Это...

Изменение цвета Label при наведении на него курсора мыши. Как это сделать?
Изменение цвета Label при наведении на него курсора мыши. Как это сделать? Какое свойство надо...

При наведении курсора на всплывающее окно - оно исчезает
Здравствуйте! У меня такая проблемма. Выбираю тему ''aero''. В диспетчере задач навожу мышь на...

5
Эксперт Java
4063 / 3797 / 745
Регистрация: 18.05.2010
Сообщений: 9,331
Записей в блоге: 11
30.07.2014, 23:02 2
У меня всё отлично работает. Попробуйте обновить java: 8u11 недавно вышла.
1
50 / 50 / 42
Регистрация: 06.09.2013
Сообщений: 188
31.07.2014, 00:05  [ТС] 3
turbanoff, спасибо, попробую

Добавлено через 58 минут
turbanoff, обновление о 8u11 не решило моей проблемы. Я так понимаю это проблема не с виртуальной машиной, тогда с чем это может быть связано?(
0
Эксперт Java
4063 / 3797 / 745
Регистрация: 18.05.2010
Сообщений: 9,331
Записей в блоге: 11
31.07.2014, 00:26 4
Еще может быть проблема в видео-драйверах. Попробуйте запустить ваше приложение, с параметром -Dsun.java2d.d3d=false
1
50 / 50 / 42
Регистрация: 06.09.2013
Сообщений: 188
31.07.2014, 01:22  [ТС] 5
turbanoff, да, Ваш метод работает, и как мне теперь решить эту проблему?
0
Эксперт Java
4063 / 3797 / 745
Регистрация: 18.05.2010
Сообщений: 9,331
Записей в блоге: 11
31.07.2014, 10:30 6
Yoghurt_92, Обновить видео-драйвера, или запускать с этим флажком.
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
31.07.2014, 10:30

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Как при наведении курсора на объект сделать всплывающую надпись?
Как при наведении курсора на объект (button или pic.box) сделать всплывающую надпись? Как,...

Поднять надпись при наведении на нее мыши (css)
что мне прописать в стили a:hover что бы когда наводишь мышкой надпись чуть приподнималась?

При наведении курсора на кнопку вывести эту кнопку на передний план
Можно ли сделать так что при наведении курсора на Button в запущенном проекте он бы вставал а...

Как сделать кнопку "Наверх", но чтобы она показывалась только при наведении курсора в правый нижний угол?
Здравствуйте, подскажите пожалуйста:read:, как сделать кнопку &quot;Наверх&quot; но чтобы она показывалась,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.