Loupe en java

Soyez le premier à donner votre avis sur cette source.

Vue 10 205 fois - Téléchargée 934 fois

Description

Utilitaire Loupe.

Source / Exemple :


/*

  • Loupe.java
*
  • Créé le 14-08-2006, 12:14
*
  • /
import javax.swing.* ; import java.awt.* ; import java.awt.image.* ; /**
  • Auteur : A.B.
  • /
public class Loupe extends JFrame implements Runnable { /**
  • Données membres
  • /
private BufferedImage image = null; /** constructeur de la classe Loupe */ public Loupe() { super ("Loupe"); setDefaultCloseOperation (EXIT_ON_CLOSE); setResizable (false); setBounds (50, 50, 250, 250); setVisible (true); } /**
  • faire un imprime écran une zone rectangulaire de centre la pointe du
  • curseur
  • /
public void getScreenShot (Point point) throws AWTException { getScreenShot (point.x, point.y); return; } /**
  • faire un imprime écran d'une zone rectangulaire de centre la pointe du
  • curseur avec un facteur d'aggrandissment x2
  • /
public void getScreenShot (int x, int y) throws AWTException { int sourceWidth = getWidth () / 2; int sourceHeight = getHeight () / 2; Robot robot; robot = new Robot (); Rectangle rectangle; rectangle = new Rectangle (x - (sourceWidth >> 1), y - (sourceHeight >> 1), sourceWidth, sourceHeight); image = robot.createScreenCapture (rectangle); return; } /**
  • @param point : (x, y)
  • renvoie : true si ce point est à l'intérieur de la fenêtre
  • false sinon
  • /
boolean isPointInRect (Point point) { int frameX = getX (); int frameY = getY (); int frameWidth = getWidth (); int frameHeight = getHeight (); return ((point.x >= frameX) & (point.x <= frameX + frameWidth)) & (point.y >= frameY) & (point.y <= frameY + frameHeight); } /**
  • /
public void run () { while (true) { try { // récupérer les coordonnées de la pointe de la souris Point point; point = MouseInfo.getPointerInfo ().getLocation (); if (isPointInRect (point)) continue; Graphics g; g = getGraphics (); // faire un imprime écran try { getScreenShot (point); } catch (AWTException exception) { } // afficher l'imprime écran sur le fenêtre if (image != null) g.drawImage (image, 0, 0, getWidth (), getHeight (), this); // libérer le contexte d'affichage g.dispose (); // faire un rafraîchissement tout les 50 millisecondes Thread.sleep (50); } catch (InterruptedException exception) { } } } /**
  • @param args : ligne de commande
  • /
public static void main(String[] args) { // code de l'application Thread Application = new Thread ( new Loupe ()); Application.start (); } }

Conclusion :


Merci à ceux qui m'ont aidé à réaliser ce petit programme.
Remarques, Critiques, Remerciement sont les bienvenues.

Et Merci ...

Codes Sources

A voir également

Ajouter un commentaire Commentaires
Twinuts
Messages postés
5371
Date d'inscription
dimanche 4 mai 2003
Statut
Modérateur
Dernière intervention
1 avril 2022
111
4 févr. 2007 à 21:52
Salut,

il y a un forum pour ça.
opla13
Messages postés
3
Date d'inscription
dimanche 4 février 2007
Statut
Membre
Dernière intervention
15 mars 2008

4 févr. 2007 à 21:35
salut ,
on m'a demandé un mini projet mais j'ai pas trouvée je compte sur vous de m'aider voila je suis un etudiant en 2éme année informatique
quelque soit le sujet php,cpp,java,javascript ,reseau ...
svp aider moi
opla13@yahoo.fr
imadtahi
Messages postés
1
Date d'inscription
dimanche 9 mars 2003
Statut
Membre
Dernière intervention
28 novembre 2006

28 nov. 2006 à 23:34
Bravo, je vous félicite ;) trés bon programme.
Merci
jmecodol
Messages postés
16
Date d'inscription
jeudi 19 janvier 2006
Statut
Membre
Dernière intervention
28 août 2006

4 sept. 2006 à 00:58
J'était en train de faire la marmotte,

mais c'est raté pour cette fois-ci je crois .

>^.^<
tucobouch
Messages postés
194
Date d'inscription
vendredi 17 février 2006
Statut
Membre
Dernière intervention
1 mai 2009
48
3 sept. 2006 à 22:38
Bonjour,

heu... c'est pas moi qui avait des problemes avec le copier coller (avec les numeros) lol. c'est JMECODOL lol mais c'est du detail ;)

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.