Programmation formes 2D de base en Java en utilisant Graphics et classes JFrame


Programmation en Java formes est comme toute autre langue. Tout ce que vous devez savoir, ce est ce que les classes que vous devez appeler et comment dessiner des formes sur l'écran. Une fois que vous savez comment mettre en place les classes et la façon de faire les formes de l'écran, de sorte que vous pouvez créer votre propre modèle que vous pouvez utiliser plus tard dans d'autres programmes qui sont créés.

Dans cet article, je vais vous montrer comment faire des appels à la classe "Graphics" qui vous permettra d'appeler les formes 2D de base qui peuvent être tirées d'une fenêtre. Deuxièmement, je vais vous montrer comment faire un appel à la classe "JFrame" qui vous permet de créer une fenêtre normale pour dessiner vous formulaires pour l'écran. Enfin, notre programme va utiliser l'extension "fourre-tout" qui vous permet d'utiliser la peinture pour le rendre plus facile à dessiner les formes sur l'écran.




Pour créer ce programme je utilise NetBeans 7.2.1 version, qui est un téléchargement gratuit. Si vous souhaitez copier et coller le code sans avoir à taper puis le faire avec NetBeans 7.0 et alors il serait mieux en raison de problèmes de compatibilité possibles. Cependant, ce programme devrait également travailler pour l'IDE Eclipse. Ne oubliez pas que lorsque vous créez ce nouveau projet, il suffit de créer une application Java régulière et donner le nom de classe "zone de dessin".

Un peu "d'informations sur les graphiques, la toile, et les classes JFrame.

Avant de vous montrer le code initial, je voulais expliquer les deux principales classes que nous allons utiliser pour créer nos formes. Aussi, je voulais aborder étendant Toile va utiliser pour accéder à la "peinture".

Premièrement, nous allons dire que notre programme pour étendre la classe Canvas. Comme indiqué ci-dessus, cela nous permettra d'avoir accès à la «peinture» (où vous prendrez priorité). Cette fonction est où nous faisons toutes nos conceptions avant de passer formes de fonctionner JFrame.

Ensuite, il ya la classe Graphics que nous allons aider à façonner nos formes. La classe Graphics peut être ajouté à ne importe quel programme en utilisant l'instruction import, 'import java.awt. * ". La classe Graphics contient un grand nombre des fonctions de dessin pour dessiner des formes de base telles que des cercles, des lignes, des rectangles et des carrés ().

Enfin, il ya la JFrame de classe qui permet au programmeur de créer une fenêtre qui sera faite des dessins. En fait, quand nous appelons cette classe, nous allons également passer notre classe créée avec sa toile d'extension afin que le programme utilisera la fenêtre JFrame pour dessiner les formes.

Modèle de programme: La classe de base

Le code suivant est le modèle de base que nous allons utiliser pour cet article:

Code de modèle initial

/ * Programme de dessin qui vous permet de dessiner des formes * / Package DrawingCanvas; / ** * * Auteur Binkster * Version 1 * / import java.awt. *; javax.swing importation. *; public class DrawingCanvas étend Canvas { / ** * Param Args Les arguments de la ligne de commande * / // Constructeur DrawingCanvas publique () { } // Définit une fonction pour dessiner les formes Override peinture public void (Graphics) { } Main (string [] args) {public static void // Définir la zone de dessin DrawingCanvas toile = nouveaux DrawingCanvas (); // Créer un nouveau Window JFrame cadre = new JFrame (); // Septembre Window Size frame.setSize (500, 500); // Assurez programme SURE se termine lorsque la fenêtre de sortie, cliquez sur le bouton frame.setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE); // Dessine sur toile . frame.getContentPane () ajouter (toile); // Afficher la fenêtre frame.setVisible (true); } }

Alors, permettez-moi de vous expliquer le code ci-dessus pour vous aider à mieux comprendre ce que vous regardez. Les deux les importations sont nécessaires pour donner accès aux cartes et des classes JFrame. Rappelez-vous que ces deux classes seront permettre au programme de faire des appels à des graphiques et des fonctions JFrame pour aider à créer des formes et la fenêtre pour faire les formes, respectivement.

Ensuite, vous verrez le programme de classe »Dessin Toile". classe JAVA est entraîné, de sorte que lorsque vous créez un nouveau projet et le nom de la classe, l'IDE crée une classe de modèle dans ce cas la classe "zone de dessin. En outre, vous pouvez voir que cette classe étend la" Toile «classe. Donner la classe principale de cette extension, vous pouvez maintenant accéder à la" peinture ", la fonction de la classe Canvas.

Le prochain point vous pouvez remarquer est que les programmeurs appellent un constructeur. Constructeurs vous permettent d'initialiser toutes les variables ou fonctions au sein de la classe interne privée. Cependant, dans ce cas, il n'y a rien à initialiser. Donc, cette fonction ne est pas vraiment nécessaire pour ce tutoriel, cependant, je ajoute toujours un constructeur pour l'ensemble de mes cours en cas je en ai besoin dans les programmes ultérieurs.

La fonction suivante est la "peinture", la fonction (ce est pourquoi nous avons besoin de l'extension Toile). Prend dans la classe Graphics en tant que paramètre. Ce est la fonction que nous allons utiliser pour créer nos formulaires que nous voulons sera établi formes pour faire avant de créer la fenêtre.

Enfin, nous avons la fonction principale qui fait le programme. Nous créons une nouvelle toile graphique et créons notre objet JFrame pour créer notre fenêtre. Enfin, nous passons à travers la fonction JFrame getContentPane toile d'objet () de sorte que la fenêtre créée par JFrame sait tirer nos propres formes.

Maintenant, pour les formes:

Rappelez-vous la "peinture"? Eh bien, maintenant, nous allons utiliser la classe Graphics et de la toile d'extension pour dessiner les formes suivantes:

Tracez une ligne

Pour dessiner une ligne que nous allons utiliser les deux fonctions suivantes:

graphics.setColor ()

graphics.drawLine ()

Comme ce qui a trait à setColor () nous allons passer le noir (ce est à dire graphics.setColor (Color.BLACK)

Et pour drawLine (), nous allons définir les coordonnées initiales dans la fenêtre pour commencer la conception et coordonne pour mettre fin au dessin. Ce qui suit est le code complet lorsque vous ajoutez ces fonctions à la fonction de la peinture:

Ajout de code pour dessiner une ligne

/ * Programme de dessin qui vous permet de dessiner des formes * / Package DrawingCanvas; / ** * * Auteur Binkster * Version 1 * / import java.awt. *; javax.swing importation. *; public class DrawingCanvas étend Canvas { / ** * Param Args Les arguments de la ligne de commande * / // Constructeur DrawingCanvas publique () { } // Définit une fonction pour dessiner les formes Override peinture public void (Graphics) { // Dessine une ligne graphics.setColor (Color.BLACK); graphics.drawLine (100, 100, 340, 380); } Main (string [] args) {public static void // Définir la zone de dessin DrawingCanvas toile = nouveaux DrawingCanvas (); // Créer un nouveau Window JFrame cadre = new JFrame (); // Septembre Window Size frame.setSize (500, 500); // Assurez programme SURE se termine lorsque la fenêtre de sortie, cliquez sur le bouton frame.setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE); // Dessine sur toile . frame.getContentPane () ajouter (toile); // Afficher la fenêtre frame.setVisible (true); } }

Lorsque vous exécutez le code ci-dessus, vous obtenez la fenêtre suivante:

Figure 1: Dessiner Ligne

Dessinez un rectangle:

Ensuite, je vais vous montrer comment code et dessinez un rectangle. Nous allons utiliser une seule fonction à cette époque et que la fonction graphics.drawRect (10,10,100,100). Nous ne allons pas à vous soucier de la couleur maintenant; Je voulais juste montrer le code pour dessiner. Ce qui suit est le code:

Dessin d'un rectangle

/ * Programme de dessin qui vous permet de dessiner des formes * / Package DrawingCanvas; / ** * * Auteur Binkster * Version 1 * / import java.awt. *; javax.swing importation. *; public class DrawingCanvas étend Canvas { / ** * Param Args Les arguments de la ligne de commande * / // Constructeur DrawingCanvas publique () { } // Définit une fonction pour dessiner les formes Override peinture public void (Graphics) { // Dessine un rectangle graphics.drawRect (10, 10, 100, 100); } Main (string [] args) {public static void // Définir la zone de dessin DrawingCanvas toile = nouveaux DrawingCanvas (); // Créer un nouveau Window JFrame cadre = new JFrame (); // Septembre Window Size frame.setSize (500, 500); // Assurez programme SURE se termine lorsque la fenêtre de sortie, cliquez sur le bouton frame.setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE); // Dessine sur toile . frame.getContentPane () ajouter (toile); // Afficher la fenêtre frame.setVisible (true); } }

Voici comment cela se affiche lorsque vous exécutez le programme:

Figure 2: Dessiner rectangle

Maintenant, si vous voulez changer la couleur de la bordure du rectangle, juste faire un autre appel à graphics.setColor (). Dans ce cas, je ai décidé de changer la bordure rouge. Voici le code:

Dessiner un rectangle rouge

/ * Programme de dessin qui vous permet de dessiner des formes * / Package DrawingCanvas; / ** * * Auteur Binkster * Version 1 * / import java.awt. *; javax.swing importation. *; public class DrawingCanvas étend Canvas { / ** * Param Args Les arguments de la ligne de commande * / // Constructeur DrawingCanvas publique () { } // Définit une fonction pour dessiner les formes Override peinture public void (Graphics) { // Change Rectangle Couleur de la bordure graphics.setColor (Color.RED); graphics.drawRect (10, 10, 100, 100); } Main (string [] args) {public static void // Définir la zone de dessin DrawingCanvas toile = nouveaux DrawingCanvas (); // Créer un nouveau Window JFrame cadre = new JFrame (); // Septembre Window Size frame.setSize (500, 500); // Assurez programme SURE se termine lorsque la fenêtre de sortie, cliquez sur le bouton frame.setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE); // Dessine sur toile . frame.getContentPane () ajouter (toile); // Afficher la fenêtre frame.setVisible (true); } }

Et voici ce qui se affiche lorsque vous exécutez le programme:

Figure 3: Rectangle Rouge

Nous pouvons également faire un appel pour remplir le rectangle avec une couleur. La fonction de le faire est graphics.fillRect (). Dans ce cas, je ai décidé de remplir le rectangle avec la couleur jaune. Voici le code:

Dessine un rectangle rempli

/ * Programme de dessin qui vous permet de dessiner des formes * / Package DrawingCanvas; / ** * * Auteur Binkster * Version 1 * / import java.awt. *; javax.swing importation. *; public class DrawingCanvas étend Canvas { / ** * Param Args Les arguments de la ligne de commande * / // Constructeur DrawingCanvas publique () { } // Définit une fonction pour dessiner les formes Override peinture public void (Graphics) { // Rect rempli d'une couleur graphics.setColor (Color.yellow); graphics.fillRect (10, 10, 100, 100); graphics.setColor (Color.RED); graphics.drawRect (10, 10, 100, 100); } Main (string [] args) {public static void // Définir la zone de dessin DrawingCanvas toile = nouveaux DrawingCanvas (); // Créer un nouveau Window JFrame cadre = new JFrame (); // Septembre Window Size frame.setSize (500, 500); // Assurez programme SURE se termine lorsque la fenêtre de sortie, cliquez sur le bouton frame.setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE); // Dessine sur toile . frame.getContentPane () ajouter (toile); // Afficher la fenêtre frame.setVisible (true); } }

Il ressemble à ceci lorsque vous exécutez le code:

Figure 4: Rectangle rempli

Circles (OVAL)

Vous pouvez également créer des cercles (Alias ​​ovales) avec la classe "Graphics" avec des couleurs différentes pour la frontière et remplissages. Pour ce faire, il suffit de faire des appels en utilisant une combinaison de fonctions setColor (), fillOval (), et drawOval (). Le code suivant crée un cercle et lui donne une bordure rouge avec un fond jaune.

Tracez un cercle rempli

/ * Programme de dessin qui vous permet de dessiner des formes * / Package DrawingCanvas; / ** * * Auteur Binkster * Version 1 * / import java.awt. *; javax.swing importation. *; public class DrawingCanvas étend Canvas { / ** * Param Args Les arguments de la ligne de commande * / // Constructeur DrawingCanvas publique () { } // Définit une fonction pour dessiner les formes Override peinture public void (Graphics) { // Dessine un cercle avec la couleur de la bordure et de remplir graphics.setColor (Color.yellow); graphics.fillOval (50, 50, 100, 100); graphics.setColor (Color.RED); Graphics.drawOval (50, 50, 100, 100); } Main (string [] args) {public static void // Définir la zone de dessin DrawingCanvas toile = nouveaux DrawingCanvas (); // Créer un nouveau Window JFrame cadre = new JFrame (); // Septembre Window Size frame.setSize (500, 500); // Assurez programme SURE se termine lorsque la fenêtre de sortie, cliquez sur le bouton frame.setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE); // Dessine sur toile . frame.getContentPane () ajouter (toile); // Afficher la fenêtre frame.setVisible (true); } }

Ce est ce que vous obtenez lorsque vous exécutez le programme:

Figure 5: Rempli ovale

Conclusion:

Ainsi, l'article ci-dessus donne une idée générale de la façon de créer des formes 2D de base en Java. Ce qui précède est également un bon modèle pour la réutilisation du code au cas où vous devez dessiner une forme dans vos futurs projets.

Articles de programmation d'eBay

Articles en Vente sur Amazon

(0)
(0)

Commentaires - 0

Sans commentaires

Ajouter un commentaire

smile smile smile smile smile smile smile smile
smile smile smile smile smile smile smile smile
smile smile smile smile smile smile smile smile
smile smile smile smile
Caractères restants: 3000
captcha