Форум программистов, компьютерный форум, киберфорум
Java: GUI, графика
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/6: Рейтинг темы: голосов - 6, средняя оценка - 4.50
 Аватар для viwald
3 / 3 / 1
Регистрация: 13.12.2010
Сообщений: 51

Кнопка с пользовательским интерфейсом

20.10.2012, 01:02. Показов 1291. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет.Нужна помощь:
Есть код,реализующий нажатие мыши на объект(четырехугольник),при нажатии на него,в консоли отображается "Кнопка нажата\отжата".(пример 1)
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
 class TestButton extends JComponent {
     boolean Press;
 public TestButton(){
     super();
     setPreferredSize(new Dimension(200,200));
     setBounds(10,10,120,120);
     Press = false;
     
     addMouseListener(new java.awt.event.MouseAdapter(){
         
         public void mousePressed(java.awt.event.MouseEvent e){
             System.out.println("Кнопка нажата");
             Press = true;
             repaint();
         }
         public void mouseReleased (java.awt.event.MouseEvent e){
             System.out.println("Кнопка отпущена");
             Press = false;
             repaint();
         }
         
     });
     }
 
 
  public void paintComponent(Graphics g){
      super.paintComponent(g);
      if (Press) g.setColor(Color.green);
      else g.setColor(Color.red);
      g.drawRect(10, 10, 100, 100);
  }
}
 
public class Test {
    
    JPanel JPanel1;
    
    public static void main (String [] args){
        new Test();
        
        
        
        javax.swing.SwingUtilities.invokeLater(new Runnable() { 
            public void run(){
                try{
                    UIManager.setLookAndFeel("com.sun.java.swing.plaf.motif.MotifLookAndFeel");    
                }catch  (Exception ex ) {} 
            }
        });
    }
    
    public Test(){
        TestButton testButton = new TestButton();
        
        JPanel1 = new JPanel();
        JPanel1.setLayout(null);
        JPanel1.add( testButton);
        JFrame frame = new JFrame("HelloWorldSwing");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.getContentPane().add(JPanel1);
        frame.setSize(640, 480);
        frame.setVisible(true);
    }
 
}
Вот суть проблемы:Как вместо четырехугольника,"залить в код" изображение(допустим Png) и чтобы при нажатии на него,эффект был как в примере №1 ?
Вот мои попытки реализовать сие,но они не увенчались успехом и процесс встал...:
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
import java.awt.Dimension;
import java.awt.Graphics;
import java.awt.Image;
 
import javax.swing.ImageIcon;
import javax.swing.JComponent;
 
class ButtonImage  extends JComponent{
    boolean Press;
    
    public ButtonImage(){
        super();
        Image img = new ImageIcon("res/button.png").getImage();
        
        Press = false;
        
    addMouseListener(new java.awt.event.MouseAdapter(){  
        
        public void mousePressed(java.awt.event.MouseEvent e){
            System.out.println("Button have been pressed");
            Press = true;
            repaint();
        }
        
        public void mouseReleased (java.awt.event.MouseEvent e){
            System.out.println("Button have been released");
            Press = false;
            repaint();
        }
    });
}
    
    public void paintComponent(Graphics g){
        super.paintComponent(g);
        g.drawImage(img, 0, 0, null);
    }
    
    
    
    
}
За ранее спасибо за помощь!

P.S Если вас не затруднит,напишите пожалуйста ответ с кодом.
Миниатюры
Кнопка с пользовательским интерфейсом  
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
20.10.2012, 01:02
Ответы с готовыми решениями:

Как создать кнопку с пользовательским стилем
Всем привет,нужна помощь: Всем известно,что с помощью java можно создавать кнопки.Обычные некрасивые виндовские кнопки,с помощью...

Нарисовать круг с пользовательским радиусом. Как передать значение String из s1-JFrame в s2-Canvas?
Задача: Нарисовать круг с пользовательским радиусом. Предполагаемый сценарий реализации: Пользователь вводит значение радиуса в...

Как создать окно с пользовательским интерфейсом
Я наверное немножко отстал, слышал, что можно создавать кастомные окна в впф-е при помощи .net 4.5 Т.е. используя что-то наподобии метро...

3
 Аватар для Skipy
2000 / 1427 / 92
Регистрация: 25.11.2010
Сообщений: 3,611
22.10.2012, 13:29
А где находится изображение res/button.png, которое Вы грузите?
0
 Аватар для viwald
3 / 3 / 1
Регистрация: 13.12.2010
Сообщений: 51
23.10.2012, 20:55  [ТС]
В каком смысле "где"?Что-то я вас не совсем понял)
0
 Аватар для Skipy
2000 / 1427 / 92
Регистрация: 25.11.2010
Сообщений: 3,611
24.10.2012, 15:39
Физически. Где на диске по отношению к скомпилированному классу ButtonImage находится это изображение? Где по отношению к исходнику?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
24.10.2012, 15:39
Помогаю со студенческими работами здесь

Создать приложение с многооконным пользовательским интерфейсом
Задание: Выдача заданного сообщения через заданное время. Предусмотреть возможность остановки/пуска таймера. Требования к создаваемому...

Игра Быки и коровы с Пользовательским интерфейсом на Delphi
всем здравствуйте!!!! мне очень нужна ваша помощь, понимаете саму игру написать очень даже легко, только создание интерфейса для...

Разработка Java-приложения с графическим пользовательским интерфейсом
В программе не хватает "функции заливки". Программа строит фигуры, но заливки нету. Посмотрите пожалуйста. Текст программы: ...

Какой язык программирования лучше изучить, чтобы писать программы с пользовательским интерфейсом?
какой язык программирования лучше изучить, чтобы писать программы с пользовательским интерфейсом? Т.е с графическим интерфейсом! И если ...

классы для работы с базами данных, для обработки ввода пользователей и для работы с пользовательским интерфейсом.
Вопрос к профи ASP.NET. В данный момент мной разрабатываються классы: для работы с базами данных, для обработки ввода пользователей и для...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизита табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать контроль заполнения реквизита "ПричинаСписания". . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
Вывод данных в справочнике через динамический список
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
Программное заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению. На форме документа создается. . .
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru