Salut tout le monde!
alors voilà, je dois faire un projet où je dois lire une video, et avec un clic de la souris sur la video je dois connaitre les coordonnées de la souris.
J'utilise pour lire la video le JMF, mais mon MouseListener ne fonctionne que sur les contours de la video (ce qui est assez embetant en fait...) et pas dans la video elle-meme, comme si le lecteur passait au-dessus de la frame, et ne prenait pas en compte le MouseListener...
donc si quelqu'un avait une suggestion, elle serait la bienvenue!
voilà mon code:
Code :
- import javax.swing.*;
- import javax.swing.event.*;
- import java.io.*;
- import javax.media.*;
- import javax.media.bean.playerbean.*;
- import javax.media.format.*;
- import javax.media.util.*;
- import javax.media.control.*;
- import javax.media.protocol.*;
- import java.util.*;
- import java.awt.*;
- import java.awt.event.*;
- import java.awt.Event;
- import java.awt.event.MouseEvent;
- public class PlayMediaFile extends Panel{
- public static Player player;
- static int posX;
- static int posY;
- public PlayMediaFile() {
- setLayout(new BorderLayout());
- setSize(220,200);
- MediaLocator ml = new MediaLocator
- ("file:///c:/Projet Java/Brice de Nice 2.mpg" );
- if (ml == null) {
- System.out.println("Can't build ML!!" );
- System.exit(-1);
- }
- try {
- player = Manager.createRealizedPlayer(ml);
- player.start();
- Component comp;
- if ((comp = player.getVisualComponent()) != null){
- add(comp,BorderLayout.CENTER);
- }
- if ((comp = player.getControlPanelComponent()) != null) {
- add(comp,BorderLayout.SOUTH);
- }
- validate();
- } catch (Exception e) {
- e.printStackTrace();
- }
- }
- public static void main(String[] args) {
- Frame f = new Frame("PlayMediaFile" );
- PlayMediaFile pmf = new PlayMediaFile();
- f.addWindowListener(new WindowAdapter() {
- public void windowClosing(WindowEvent e) {
- playerclose();
- System.exit(0);
- }
- });
- f.add("Center",pmf);
- pmf.addMouseListener(new MouseAdapter() {
- public void mouseClicked(MouseEvent event){
- posX = event.getX();
- posY = event.getY();
- System.out.println(posX+" ;"+posY);
- }
- });
- f.pack();
- f.setSize(new Dimension(500,450));
- f.setVisible(true);
- }
- public static void playerclose() {
- player.close();
- player.deallocate();
- }
- }
|
Merci d'avance!
Vassily
--Problème résolu! (avant le suivant...)--
Message édité par vassily le 12-02-2004 à 17:16:19