Материал: 5 - Презентация

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

Пример События клавиатурыЦентрд стобучениянционного

import java.awt.Font;

import java.awt.event.KeyAdapter; import java.awt.event.KeyEvent;

import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JPanel; import java.awt.BorderLayout; import java.awt.Dimension;

public class TestFrame extends JFrame {

private JLabel label;

public TestFrame() { super("Test frame");

 

createGUI();

}

7-26online.mirea.ru

Центрдистанционногообучения

Пример События клавиатуры

public void createGUI() { setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); JPanel panel = new JPanel(); panel.setLayout(new BorderLayout()); panel.setFocusable(true);

label = new JLabel();

label.setFont(new Font("Calibri", Font.PLAIN, 20)); label.setHorizontalAlignment(JLabel.CENTER);

panel.addKeyListener(new KeyAdapter() { public void keyReleased(KeyEvent e) {

label.setText(e.getKeyText(e.getKeyCode()));

}

});

7-27online.mirea.ru

Центрдистанционногообучения

Пример События клавиатуры

рanel.add(label, BorderLayout.CENTER); setPreferredSize(new Dimension(200, 200)); getContentPane().add(panel);

}

public static void main(String[] args) { javax.swing.SwingUtilities.invokeLater(new Runnable() {

public void run() { JFrame.setDefaultLookAndFeelDecorated(true); TestFrame frame = new TestFrame(); frame.pack(); frame.setLocationRelativeTo(null);

frame.setVisible(true);

}

}); //Обратитевнимание!

}}

В Java многопоточность программы организуется с помощью интерфейса Runnable и класса Thread, который наследуется от Runnable.

Первый способ более гибкий, второй

– проще.

Та часть кода, которая должна выполняться в отдельном потоке,

online.mirea.ru

выносится в свой класс, имеющий переопределенный метод run().

 

 

 

Центрдистанционногообучения

Пример События клавиатуры

Здесьпроисходитобработкинажатия клавишкомпонентом JPanel.

Поумолчанию JPanel недолженполучать фоднако, кусаэтомсджно,еслилать оченьзахотетьприпометодаощи

setFocusable ипередатьэтомуметоду true в качествепараметра .

online.mirea.ru

События Мыши

Центрдистанционногообучения

 

События, связанные с мышью разделены на события мыши и события движения мыши

События мыши

Нажатие Мыши

кнопка мыши нажата

 

 

Мышь отпущена

Кнопка мыши отпущена

 

 

Клик на мышь

кнопка мыши нажата и освобожден без

 

перемещения мыши между этими

 

событиями

 

 

Мышь вошла

указатель мыши перемещается на (над)

 

компонент

 

 

Мышь вышла

указатель мыши перемещается за

 

пределы компонента

 

 

7-30

online.mirea.ru