Как обработать наезд мышки на кнопку?
Релиб
Форумы       Участники    Календарь    Кто он-лайн?
Добро пожаловать, гость ( Вход | Регистрация )
        


12»»

Как обработать наезд мышки на кнопку? Expand / Collapse
Автор
Сообщение
14.01.2001 20:54
новичок

новичокновичокновичокновичокновичокновичокновичокновичок

участник
Last Login: 14.01.2001 20:51
Сообщ.: 7, Visits: 78
В Вижуал J++ 6.0 Как можно обработать событие прохождение мышки над кнопкой ? Подскажите пожайлуста, специалисты !!!
Сообщ. #703092
21.01.2001 19:37
Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

участник
Last Login: 12.12.2001 19:49
Сообщ.: 128, Visits: 1 409
Я вобщем то не специалист но думаю что надо переопределить метод handleEvent()
т.к. методы action() mouseMove() ,без переопределения обрабатывают для кнопок только стандортные события типа click
Сообщ. #703319
23.01.2001 17:57
Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme 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);
}
Сообщ. #703392
25.01.2001 12:21
Forum Member

Forum MemberForum MemberForum MemberForum MemberForum MemberForum MemberForum MemberForum 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);
}
}
Сообщ. #703468
25.01.2001 17:23
Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme 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
{
определяете здесь методы которые вам нужны
}
Сообщ. #703478
25.01.2001 18:19
Forum Member

Forum MemberForum MemberForum MemberForum MemberForum MemberForum MemberForum MemberForum 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");
}
});

Называется анонимным классом ...

Сообщ. #703482
26.01.2001 17:29
Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

модератор
Last Login: 10.03.2008 23:02
Сообщ.: 2 077, Visits: 21 402
Вот с такой постановкой я согласен.Так что там два пути мой или ваш.Так что как ковориться на выбор.
Сообщ. #703518
26.01.2001 17:29
Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

модератор
Last Login: 10.03.2008 23:02
Сообщ.: 2 077, Visits: 21 402
Вот с такой постановкой я согласен.Так что там два пути мой или ваш.Так что как ковориться на выбор.
Сообщ. #703519