slam4:gui:swing

Ceci est une ancienne révision du document !


Swing

  1. Comparatif Versions ActionListener dans les vues / PropertyChangeListener au niveau du contrôleur
    • changement d'outil sur menu
    • Fermeture de l'application
    • Effacement du dessin
  1. Terminer l'implémentation Dessin Swing avec 2 outils + Contrôleur principal
  2. Ajouter le changement d'outil sur frappe touche du clavier (e → Etoile , c → Crayon ) voir addKeyListener
  3. Ajouter le changement d'outil dans un menu Outil composé de 2 JRadioButtonMenuItem, intégrés dans un ButtonGroup :
  4. Créer une boîte de dialogue A propos de… et ajouter un élément de menu correspondant dans un menu ?/A propos de… voir JDialog
  5. Proposer des solutions pour qu'une seule instance de DialogAbout soit créée pendant l'exécution de l'application
  6. Créer un sous menu Couleur dans Outil, proposant de changer la couleur de l'outil (noir, bleu, rouge, vert, jaune), modifier le modèle pour prendre en compte la couleur des figures.

Menu Outil :

Boîte de dialogue A propos de… :

  • Charger une image contenue dans les sources java :

	String imagePathAndFileName="CheminRelatifVersImage";
	java.net.URL imageURL = getClass().getResource(imagePathAndFileName);
	img = new ImageIcon(imageURL).getImage();

  • Dessiner sur un JPanel :

	JPanel panel = new JPanel() {
		@Override
		public void paint(Graphics g) {
			//dessin sur g...
		}
	};

java 7 JFrame API
Paramètres de base

  • setTitle(String)
  • setSize(int, int)
  • setDefaultCloseOperation(int)
  • setLocationRelativeTo(Component)
  • setJMenuBar(JMenu)
  • setLayout(LayoutManager)
  • add(Component, Object)
  • setVisible(Boolean)

Ajout de listeners :

  • addMouseListener(MouseListener l)
  • addMouseMotionListener(MouseMotionListener l)
  • addKeyListener(KeyListener l)

Java 7 JMenuBar API

  • add(JMenu)

JMenu

  • add(JMenuItem)
  • addSeparator()
JMenuItem
  • addActionListener(ActionListener)

BorderLayout

		parent.setLayout(new BorderLayout());
		parent.add(component, BorderLayout.CENTER);

GridLayout

		parent.setLayout(new GridLayout(1, 3));
		parent.add(component);

  • slam4/gui/swing.1397495869.txt.gz
  • Dernière modification : il y a 7 ans
  • (modification externe)