Ninn : Une fenêtre Java avec un JTextArea

Introduction

Je vous en parlais dans la brève d’aujourd’hui, nous allons bientôt démarrer le développement de Ninn fin Septembre si tout se passe bien. Nous allons partager avec vous ce mois-ci un code en java qui servira de base au développement de Ninn. (Nous avons de grands projets pour Ninn🙂 ).

Java 

Pour exécuter ce code, veuillez avoir installer l’environnement Java (JRE et JDK). Pour comprendre ce code servez vous des commentaires ainsi de l’article proposé en fin d’article.🙂

 
 

package Ihm;
import java.util.*;
//on importe tout le contenu de la bibliothèque avec
//cela évite d'importer un par un les éléments de la bibliothèque swing
import javax.swing.*;
/*je suis obligé de faire appel à AWT car j'en ai besoin pour gérer les 'layouts manager'
(gestionnaires de placement)
*/
import java.awt.*;
import java.awt.event.*;

//la classe hérite de JFrame (extends)
class mainwindow extends JFrame
//On maintenant construit la fenêtre
{
/*variable privée : variable accessible uniquement dans la classe
on déclare ces variables qui vont être utilisés dans le constructeur avant
avantage de le déclarer en dehors du constructeur :
utilisable partout dans la classe mainwindow*/

//Container, contient tous les autres objets tel que JButton
private JPanel panel = new JPanel();

//barre de menu
private JMenuBar menubar = new JMenuBar();

//Menu
private JMenu file = new JMenu("File");
private JMenu edition = new JMenu("Edit");
private JMenu about = new JMenu("A propos");

//Items
private JMenuItem sauvegarder = new JMenuItem("Save");
private JMenuItem quitter = new JMenuItem("Quit");
private JMenuItem license = new JMenuItem("License");

//fontsize sera un item de : edition et aura plusieurs items
private JMenu fontsize = new JMenu("Font Size");
private JMenuItem size12 = new JMenuItem("12");
private JMenuItem size36 = new JMenuItem("36");
//Zone de texte
private JTextArea text = new JTextArea("");
//constructeur
public mainwindow()
{            //titre de la fenêtre
setTitle("NINN");
//taille de la fenêtre
setSize(990,560);
setResizable(true);
//affiche la fenêtre au centre de l'écran
setLocationRelativeTo(null);
//cadre de la fenêtre
//true : cadre
//false : sans cadre
setUndecorated(false);
// ferme la fenêtre
//si on ne met pas ça en réalité la fenetre n'est pas fermée elle a juste "disparue"
setDefaultCloseOperation(EXIT_ON_CLOSE);

//----------------
setJMenuBar(menubar);
menubar.add(file);
menubar.add(edition);
menubar.add(about);
file.add(sauvegarder);
file.add(quitter);
edition.add(fontsize);
fontsize.add(size12);
fontsize.add(size36);
about.add(license);

//----------------

//raccourcis clavier
sauvegarder.setMnemonic('S');
// getKeyStroke to get the KeyChar
sauvegarder.setAccelerator(KeyStroke.getKeyStroke (KeyEvent.VK_S,InputEvent.CTRL_MASK));
quitter.setMnemonic('Q');
quitter.setAccelerator(KeyStroke.getKeyStroke (KeyEvent.VK_Q,InputEvent.CTRL_MASK));

//----------------

//quand on clique sur quitter, l'application se ferme
//pour sauvegarder
sauvegarder.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent arg0) {
JOptionPane.showMessageDialog(panel, "La fonction sauvegarder n'existe pas encore" );
}
}
);
//pour quitter Ninn
quitter.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent arg0) {
System.exit(0);}
}
);
//la licence d'exploitation de Ninn
license.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent arg0) {
JOptionPane.showMessageDialog(panel, "GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 Copyright (C) 2007 Free Software Foundation, Inc. http://fsf.org/" );
}
}
);
//pour modifier la taille du texte
size12.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent arg0) {
Font twelve = new Font("Arial", Font.PLAIN,12 ); // 12
text.setFont(twelve);
}
}
);
size36.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent arg0) {
Font twelve = new Font("Arial", Font.PLAIN,36 ); // 36
text.setFont(twelve);
}
}
);

//----------------

//on appelle ceci un layout manager et ceci est un objet de la bibliothèque AWT
panel.setLayout(new BorderLayout());
//panel.add(bouton, BorderLayout.NORTH);
panel.add(text, BorderLayout.CENTER);
this.setContentPane(panel);

//----------------

//autorise le retour à la ligne
text.setLineWrap(true);

}
}
//classe principale 'window'
public class window {

/**
* @param args
*/
//méthode prncipale main (static void)
public static void main(String[] args) {
// TODO Auto-generated method stub
//objet de type JFrame, on place sa référence dans window
//On va construire la fenêtre en faisant appelle à la classe mainwindow();
JFrame window = new mainwindow();
//rendre visible la fenêtre
window.setVisible(true);

}

}

VOUS AVEZ ADORÉ ? VOUS ALLEZ RIRE MAIS CET ARTICLE VOUS INTÉRESSERA.

2 réflexions sur “Ninn : Une fenêtre Java avec un JTextArea

Laisser un commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion / Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion / Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion / Changer )

Photo Google+

Vous commentez à l'aide de votre compte Google+. Déconnexion / Changer )

Connexion à %s