2009-12-02 5 views
0

J'ai un arrière-plan de classe qui étend JPanel. Le point de cette classe est celui qui contient une image qui y est affichée.Ajout d'une image à borderLongueur CENTRE

J'ai aussi une classe GraphTest qui étend JFrame (c'est la fenêtre principale des programmes). Dans ce cadre, j'ai un menu avec l'option "nouveau". Quand j'appuie sur new, je suis supposé avoir une fenêtre filechooser dans laquelle je peux sélectionner un fichier. Lorsque je sélectionne un fichier, je souhaite créer un objet Arrière-plan qui contient le même fichier que l'image à afficher et ajouter l'objet Arrière-plan à la bordure de Graphtests CENTER.

Comment est-ce que je devrais faire ceci? Je pense à l'écriture de la classe Background pour que le constructeur prenne une chaîne, qui est le nom du fichier images. Donc quand on appuie sur l'écouteur pour le bouton "nouveau" dans Graphtest, il ouvre un filechooser qui retourne le nom de fichier de l'image sélectionnée et l'envoie dans le constructeur pour Background, créant un "Background bg = new Background (filechooser .filename.toString) "(je sais que ce n'est pas comment l'écrire, mais vous avez l'idée) et ajoute ensuite cet objet à la bordure graphique GraphTest CENTER.

Est-ce une bonne solution? Ou serait-il de meilleures façons de le faire?

Répondre

0

Voici ma classe BackgroundPanel. Je choisis de passer dans l'image pour être utilisé comme arrière-plan. Mais il n'y a aucune raison que vous ne puissiez pas passer le nom de fichier et ensuite créer l'image. Avoir la possibilité de passer directement dans l'image ou le nom de fichier rend la classe plus pratique.

Questions connexes