Publié le 03/09/2010
Auteur fobec
Réseaux sociaux
0 partages
0 tweets
0 plus
0 commentaires

Cacher la barre de titre d'un JFrame

La barre de titre comprend le nom de la fenêtre et les boutons en haut à droite. Est ce que l'on peut supprimer cette barre en JAVA ? Tout à fait, un jFrame peut être affiché sans barre de titre comme une fenetre flottante.

Supprimer la barre de titre

Dans certains cas de figure, le titre de la fenêtre et les 3 icônes (réduction, maximiser et fermer) ne servent à rien. Par exemple pour afficher une bulle d'aide, le jFrame n'a pas besoin de la barre de titre.
import java.awt.Container;
import java.awt.FlowLayout;
import java.awt.event.MouseAdapter;
import javax.swing.JButton;
import javax.swing.JFrame;
 
/**
 * Cacher la barre de titre d'un JFrame
 * http://www.fobec.com/java/990/cacher-barre-titre-jframe.html
 * Auteur Fobec 2010
*/
public class FrameConfig{
 
    public static void main(String[] args) {
        JFrame frame = new JFrame();
        //cacher la barre de titre
        frame.setUndecorated(true);
        JButton button = new JButton();
        button.setText("Fermer la fenetre");
//Ajouter un evenement sur le click de la souris
        MouseAdapter actionListener = new java.awt.event.MouseAdapter() {
            public void mouseClicked(java.awt.event.MouseEvent evt) {
                System.exit(0);
            }
        };
        button.addMouseListener(actionListener);
        //Placer le button sur le Frame
        Container container = frame.getContentPane();
        container.setLayout(new FlowLayout());
        container.add(button);
 
        frame.setSize(200, 200);
        frame.setVisible(true);
    }
}


La class ci-dessous donne un apercu de l'utilisation d'un jFrame en tant que conteneur d'une fenetre flottante, par exemple un message de notification ou un post-it sur l'ecran.
Attention, lorsque l'on supprime la barre de titre, il convient de prévoir un autre moyen de fermer le jFrame. Dans le cas de l'exemple, nous avons ajouté un bouton qui sert à fermer l'application.

Ajouter un commentaire

Les champs marqués d'un * sont obligatoires, les adresses emails se sont pas publiées.

A lire aussi

Réseaux sociaux
Présentation de l'article
Catégorie
java - sources
Mise a jour
03/09/2010
Visualisation
vu 4072 fois
Public
Internaute
Auteur de la publication
Fobec
Admin
Auteur de 263 articles
|BIO_PSEUDO|
Commentaires récents

Publié par hako dans CMS

merci bien mon ami dd

Publié par eldiablo dans java

Malheureusement, ce code n'est pas correct.
Cette classe accepte des dates comme : "31/00/2011"

Publié par ben ali dans CMS

je veux bien céte jeux

Publié par aalex57 dans tuto

Bonsoir,

Merci pour l'astuce, cependant votre fichier php ne fonctionne pas chez moi.
Il m'indique une erreur à la ligne 16 :/

Publié par troops28 dans CMS

C un truc qui va plaire ca ;) enfin j'espere
En ajoutant :
if ColWidths[i] < Canvas.TextWidth(strTemp) then ColWidths[i] := Canvas.TextWidth(strTemp)+10;

Dans la procedure LoadStr...