Rechercher : dans
Par :

Creation fenetre Java

Dernière réponse le 25 jan 2009 à 18:00:04 vince111, le 23 jan 2009 à 22:10:56 
 Signaler ce message aux modérateurs

Bonjour,
Je débute en java et j'aimerai créer une fenêtre sans barre de titre et redimensionnable.
En utilisant set.undecorated avec un JFrame, la fenêtre n'est plus redimensionnable.

Si quelqu'un pouvait m'orienter...

merci

Configuration: Windows XP
Internet Explorer 7.0

Meilleures réponses pour « creation fenetre Java » dans :
Java Runtime Machine VoirJava Runtime Machine Certains sites internet mais aussi certains programmes requièrent la présence de la Java Runtime Machine (JRM) pour exécuter les applets Java. Si vous n'avez pas, ou plus, cette Java Runtime...
J2EE - Java 2 Enterprise Edition VoirIntroduction au Java Framework Le «Java Framework» (Java 2 Platform) est composé de trois éditions, destinées à des usages différents : J2ME : Java 2 Micro Edition est prévu pour le développement d'applications embarquées, notamment sur des...
Java - Premier programme VoirPremière application avec Java La première chose à faire est de créer un simple fichier texte (sans mise en forme) et de taper les quelques lignes suivantes : // Votre premiere application en Java class FirstApp { public static void main...
Java - Les packages VoirIntroduction aux packages La programmation Java consiste à créer des classes. Or, étant donné qu'un programme est généralement développé par une équipe de programmeurs, c'est-à-dire plusieurs personnes, le fait de concaténer (mettre bout à bout)...

1

Posotaz, le 25 jan 2009 à 17:17:29

Bonjour,

Une aspirine ? :D

Tu vas devoir tout faire toi-même, c'est à dire implémenter le drag de la fenêtre, la détection de la position de la souris par rapport à chaque bord de la fenêtre, le changement des icônes,... Bref, bon courage ! Tout d'abord je te conseille de commencer sur une fenêtre vierge (en d'autres mots ne lui ajoute aucun composant sinon tu ne vas pas comprendre pourquoi les événements sur la fenêtre ne fonctionnent pas).

Pour ce faire, tu pourras, grâce à Java, ajouter un MouseMotionListener sur la fenêtre :

La méthode mouseMoved te permettra de détecter les déplacements de souris. Tu feras un calcul de position par rapport aux bords de la fenêtre. Tu pourras laisser une marge d'erreur de 10 pixels côté intérieur par exemple (facilement calculable avec des soustractions de la hauteur/largeur de la fenêtre et getLocationOnScreen).

Les différentes flèches pour le curseur peuvent être appliquées à la Frame grâce à la méthode setCursor et les constantes présentes dans la classe Cursor. Là aussi en fonction du bord ce sera à toi de définir quel curseur afficher (horizontal, vertical,...). Tu as donc plusieurs types de bords à détecter : les 4 coins et les 4 côtés pour 4 icônes différentes seulement.

La méthode mouseDragged te permettra de détecter les déplacements de souris lorsque le bouton gauche est enfoncé (c'est à dire ce qu'on fait quand on veut redimensionner la fenêtre). Il te suffira de jouer sur les propriété de taille de la fenêtre pour que ça corresponde aux mouvements de l'utilisateur... sans oublier de bloquer sur des dimensions trop petites ou négatives...

En gros tu es parti pour refaire toi-même la gestion d'une fenêtre... réfléchis-bien si ça t'est vraiment indispensable, moi-même m'y suis juste risqué sans avoir vraiment développé la chose (je n'ai fait que le déplacement, le plus facile à faire et encore c'est pas tip top, et la détection du bord inférieur droit sans redimensionnement). Sinon essaie peut-être de voir du côté des LookAndFeel s'il n'y en a pas un qui conserve les événements système d'une fenêtre mais qui donne l'impression que les bords soient inexistants... c'est juste une idée comme ça, je ne sais pas si c'est réellement faisable.

Répondre à Posotaz

2

 vince111, le 25 jan 2009 à 18:00:04

Merci beaucoup posotaz.
Je vai me risquer a essayer quand même, au pire, ca me fera un b entrainement
Ciao

Répondre à vince111
Collection CommentÇaMarche.net