|
|
|
новичок
      
участник
Last Login: 14.01.2001 20:51
Сообщ.: 7,
Visits: 78
|
|
| В Вижуал J++ 6.0 Как можно обработать событие прохождение мышки над кнопкой ? Подскажите пожайлуста, специалисты !!!
|
|
|
|
|
Supreme Being
      
участник
Last Login: 12.12.2001 19:49
Сообщ.: 128,
Visits: 1 409
|
|
Я вобщем то не специалист но думаю что надо переопределить метод handleEvent()
т.к. методы action() mouseMove() ,без переопределения обрабатывают для кнопок только стандортные события типа click
|
|
|
|
|
Supreme Being
      
модератор
Last Login: 10.03.2008 23:02
Сообщ.: 2 077,
Visits: 21 402
|
|
Вот эти два метода будут обрабатывать "наезд" и
"съезд" мыши с кнопки
public void mouseEntered(MouseEvent e) {
saySomething("Mouse entered", e);
}
public void mouseExited(MouseEvent e) {
saySomething("Mouse exited", e);
}
|
|
|
|
|
Forum Member
      
участник
Last Login: 24.06.2004 20:23
Сообщ.: 32,
Visits: 353
|
|
Это в 1.0 которым давно никто не пользуется а в 1.1 - на котором J++ 6 и работает это делается так:
import java.awt.*;
import java.awt.event.*;
public class MouseMoveTest extends Frame {
Button button;
public static void main(String args[]){
new MouseMoveTest();
}
public MouseMoveTest(){
super("Test");
setLayout(new BorderLayout());
setBackground(Color.lightGray);
button = new Button("Get mouse over me");
button.addMouseListener(new MouseAdapter()
public void mouseEntered(MouseEvent e){
System.out.println("Mouse entered");
}
public void mouseExited(MouseEvent e){
System.out.println("Mouse exited");
}
});
add(BorderLayout.NORTH ,button);
setSize(300, 300);
setVisible(true);
}
}
|
|
|
|
|
Supreme Being
      
модератор
Last Login: 10.03.2008 23:02
Сообщ.: 2 077,
Visits: 21 402
|
|
Дело в том что эти методы принадлежат интерфейсу MouseListener и я не собирался писать за кого-то программу.И кстати это некорректно говорить что это было в 1.0 я работаю на J++ 6.0 и JDK 1.2.2 и они естественно ещё там и никто их не отменял , тем более что Вы использовали те же методы которые написал я.И потом необходимо наисать ещё один класс который будет extends MouseAdapter где и определить эти два метода потому что программа не будет работать в том виде как вы написали.
Это должно выглядеть так.
{
Button b = new Button();
b.addMouseListener(new MouseHandler());
}
public class MouseHandler extends MouseAdapter
{
определяете здесь методы которые вам нужны
}
|
|
|
|
|
Forum Member
      
участник
Last Login: 24.06.2004 20:23
Сообщ.: 32,
Visits: 353
|
|
Пардон перепутал с public Компонентовским mouseEnter и mouseExit другое дело что вы не объяснили человеку как их использовать.
Насчёт того что пример программы работать не будет - даже не откомпилируется я тоже согласен - но по другой причине - поскольку у при переносе программы в HTML у меня потерялась фигурная скобка после строчки:
button.addMouseListener(new MouseAdapter()
должно быть так:
button.addMouseListener(new MouseAdapter(){
public void mouseEntered(MouseEvent e){
System.out.println("Mouse entered");
}
public void mouseExited(MouseEvent e){
System.out.println("Mouse exited");
}
});
Называется анонимным классом ...
|
|
|
|
|
Supreme Being
      
модератор
Last Login: 10.03.2008 23:02
Сообщ.: 2 077,
Visits: 21 402
|
|
| Вот с такой постановкой я согласен.Так что там два пути мой или ваш.Так что как ковориться на выбор.
|
|
|
|
|
Supreme Being
      
модератор
Last Login: 10.03.2008 23:02
Сообщ.: 2 077,
Visits: 21 402
|
|
| Вот с такой постановкой я согласен.Так что там два пути мой или ваш.Так что как ковориться на выбор.
|
|
|
| | |