Commits (11)
target/
*.class
\ No newline at end of file
compile:
mvn compile
run:
mvn exec:java -Dexec.mainClass="edu.mermet.tp8.Application"
package edu.mermet.tp8;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.InputEvent;
import java.awt.event.KeyEvent;
import javax.swing.AbstractAction;
import javax.swing.Action;
import javax.swing.JDesktopPane;
import javax.swing.JFrame;
import javax.swing.JInternalFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.KeyStroke;
import javax.swing.SwingUtilities;
import edu.mermet.tp8.fenetres.FenetreBoutons;
import edu.mermet.tp8.fenetres.FenetreConversion;
import edu.mermet.tp8.fenetres.FenetreDiaporama;
import edu.mermet.tp8.fenetres.FenetreTexte;
import javax.swing.*;
import edu.mermet.tp8.fenetres.*;
/**
*
......@@ -42,7 +31,11 @@ public class Application extends JFrame {
JMenuBar barre = new JMenuBar();
// ------ menu Fichier ------
JMenu menuFichier = new JMenu("Fichier");
JMenu menuAide = new JMenu("Aide");
menuFichier.setMnemonic(KeyEvent.VK_F);
menuAide.setMnemonic(KeyEvent.VK_G);
JMenuItem cmtfaire=new JMenuItem("Comment faire ?");
JMenuItem configMenu=new JMenuItem("Configuration des menus");
JMenuItem quitter = new JMenuItem("Quitter");
quitter.addActionListener (new ActionListener() {
@Override
......@@ -50,9 +43,24 @@ public class Application extends JFrame {
System.exit(0);
}
});
cmtfaire.addActionListener(new ActionListener(){
@Override
public void actionPerformed(ActionEvent e) {
new FenetreAide();
}
});
configMenu.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
new FenetreAideCommentFaire();
}
});
quitter.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_Q, InputEvent.CTRL_DOWN_MASK));
menuFichier.add(quitter);
menuAide.add(cmtfaire);
menuAide.add(configMenu);
barre.add(menuFichier);
barre.add(menuAide);
this.setJMenuBar(barre);
// ------ menu Applications ------
JMenu menuApplication = new JMenu("Applications");
......@@ -178,6 +186,4 @@ public class Application extends JFrame {
public static void main(String[] args) {
SwingUtilities.invokeLater(Application::new);
}
}
package edu.mermet.tp8.fenetres;
import javax.swing.*;
import javax.swing.event.ListSelectionEvent;
import javax.swing.event.ListSelectionListener;
import java.awt.*;
public class FenetreAide extends JFrame {
public FenetreAide(){
//liste des choix
String choix[]={"comment faire","quitter"};
//création de la fenetre d'aide
JFrame aide=new JFrame();
aide.setTitle("Menu Aide");
aide.setSize(400,400);
aide.setVisible(true);
aide.setDefaultCloseOperation(DISPOSE_ON_CLOSE);
aide.setLocationRelativeTo(null);
JTextArea text=new JTextArea("Affichage de l'aide");
//liste
JList guide=new JList(choix);
ListSelectionListener listSelectionListener=new ListSelectionListener() {
@Override
public void valueChanged(ListSelectionEvent e) {
}
};
guide.addListSelectionListener(listSelectionListener);
guide.setSelectionMode(ListSelectionModel.SINGLE_INTERVAL_SELECTION);
guide.setLayoutOrientation(JList.VERTICAL);
guide.setVisibleRowCount(-1);
JScrollPane listScroller = new JScrollPane(guide);
listScroller.setPreferredSize(new Dimension(250, 80));
//panneau des listes
JPanel listPanel=new JPanel();
//panneau du texte HTML
JPanel textPanel=new JPanel();
listPanel.add(guide);
textPanel.add(text);
//séparateur
JSplitPane jSplitPane=new JSplitPane(SwingConstants.VERTICAL,listPanel,textPanel);
aide.add(jSplitPane);
}
}
package edu.mermet.tp8.fenetres;
import javax.swing.*;
import java.awt.*;
public class FenetreAideCommentFaire extends JFrame {
public FenetreAideCommentFaire(){
JFrame config=new JFrame("Configuration des menus");
config.setVisible(true);
config.setSize(600,400);
config.setLocationRelativeTo(null);
config.setDefaultCloseOperation(DISPOSE_ON_CLOSE);
ButtonGroup group=new ButtonGroup();
JRadioButton auto=new JRadioButton("Auto");
JRadioButton affiche=new JRadioButton("Affiché");
JRadioButton cache=new JRadioButton("Caché");
group.add(auto);
group.add(affiche);
group.add(cache);
config.add(auto);
config.add(affiche);
config.add(cache);
JButton valider=new JButton("valider");
JButton annuler=new JButton("annuler");
valider.setLayout(new GridLayout());
annuler.setLayout(new GridLayout());
config.setLayout(new GridLayout(0,3));
}
}
<?xml version="1.0" encoding="UTF-8"?>
<module org.jetbrains.idea.maven.project.MavenProjectsManager.isMavenModule="true" type="JAVA_MODULE" version="4">
<component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_8">
<output url="file://$MODULE_DIR$/target/classes" />
<output-test url="file://$MODULE_DIR$/target/test-classes" />
<content url="file://$MODULE_DIR$">
<sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/src/main/resources" type="java-resource" />
<excludeFolder url="file://$MODULE_DIR$/${project.build.directory}/classes" />
<excludeFolder url="file://$MODULE_DIR$/${project.build.directory}/test-classes" />
<excludeFolder url="file://$MODULE_DIR$/target" />
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
<orderEntry type="library" scope="TEST" name="Maven: junit:junit:4.12" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: org.hamcrest:hamcrest-core:1.3" level="project" />
</component>
</module>
\ No newline at end of file