J'ai fait une simple carte de visite numérique en Java swing en utilisant Eclipse, je suis tout nouveau à Java et la programmation en général alors s'il vous plaît supporter avec moi. Fondamentalement, ce que je veux faire est d'ajouter un bouton qui dit "Notre travail" ou "Portfolio" par exemple, qui, une fois cliqué ouvrira une nouvelle fenêtre où je peux ensuite ajouter des images ou des liens ou de fausses critiques, etcFaire un deuxième cadre en Java swing
Je sais C'est probablement assez simple, mais j'ai du mal à comprendre beaucoup de tutoriels quand il est basé sur le code d'autres peuples.
package dbuscard;
import java.awt.EventQueue;
import javax.swing.JFrame;
import java.awt.Color;
import javax.swing.JLabel;
import javax.swing.ImageIcon;
import java.awt.Font;
import javax.swing.JSeparator;
public class card {
private JFrame frame;
/**
* Launch the application.
*/
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
card window = new card();
window.frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
/**
* Create the application.
*/
public card() {
initialize();
}
/**
* Initialise the contents of the frame.
*/
private void initialize() {
frame = new JFrame();
frame.getContentPane().setBackground(new Color(153, 204, 255));
frame.setBounds(100, 100, 450, 300);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.getContentPane().setLayout(null);
JLabel lblLogo = new JLabel("");
lblLogo.setBounds(127, 11, 219, 104);
frame.getContentPane().add(lblLogo);
lblLogo.setIcon(new ImageIcon("Images\\zlogoimg.png"));
JLabel lblNewLabel = new JLabel("t: 01254 777494");
lblNewLabel.setFont(new Font("Source Code Pro Light", Font.PLAIN, 11));
lblNewLabel.setBounds(20, 187, 126, 14);
frame.getContentPane().add(lblNewLabel);
JLabel lblEApexuxdesigngmailcom = new JLabel("e: [email protected]");
lblEApexuxdesigngmailcom.setFont(new Font("Source Code Pro Light", Font.PLAIN, 11));
lblEApexuxdesigngmailcom.setBounds(20, 204, 200, 14);
frame.getContentPane().add(lblEApexuxdesigngmailcom);
JLabel lblVisitWebsite = new JLabel("visit website");
lblVisitWebsite.setFont(new Font("Source Code Pro Light", Font.BOLD, 11));
lblVisitWebsite.setBounds(10, 237, 117, 14);
frame.getContentPane().add(lblVisitWebsite);
JLabel facebook = new JLabel("");
facebook.setBounds(282, 204, 64, 47);
frame.getContentPane().add(facebook);
facebook.setIcon(new ImageIcon("Images\\facebook.png"));
JLabel twitter = new JLabel("");
twitter.setBounds(320, 204, 72, 47);
frame.getContentPane().add(twitter);
twitter.setIcon(new ImageIcon("Images\\twitter.png"));
JLabel youtube = new JLabel("");
youtube.setBounds(356, 204, 68, 47);
frame.getContentPane().add(youtube);
youtube.setIcon(new ImageIcon("Images\\youtube.png"));
JLabel lblSeanHutchinson = new JLabel("Sean Hutchinson");
lblSeanHutchinson.setFont(new Font("Source Code Pro Light", Font.PLAIN, 11));
lblSeanHutchinson.setBounds(20, 128, 126, 14);
frame.getContentPane().add(lblSeanHutchinson);
JLabel lblUxDesigner = new JLabel("UX Designer");
lblUxDesigner.setFont(new Font("Source Code Pro Light", Font.PLAIN, 11));
lblUxDesigner.setBounds(20, 145, 107, 14);
frame.getContentPane().add(lblUxDesigner);
JLabel lblNewLabel_1 = new JLabel("CEO - Apex UX Design");
lblNewLabel_1.setFont(new Font("Source Code Pro Light", Font.PLAIN, 11));
lblNewLabel_1.setBounds(20, 162, 158, 14);
frame.getContentPane().add(lblNewLabel_1);
}
}
Je n'ai pas essayé de le faire, mais je crois que ce serait aussi simple que d'avoir deux JFrames. 'JFrame mainWindow, portfolioWindow' et initialiser les deux avec des informations. – CoderMusgrove
Jetez un oeil à [L'utilisation de JFrames multiples, bonne/mauvaise pratique?] (Http://stackoverflow.com/q/9554636/418556) pour des raisons pour lesquelles c'est une mauvaise idée et [Comment faire Dialogues] (http : //docs.oracle.com/javase/tutorial/uiswing/components/dialog.html) pour une solution plus raisonnable – MadProgrammer
En fait, c'est à peu près Swing 101, voir [Création d'une interface graphique avec JFC/Swing] (http: //docs.oracle.com/javase/tutorial/uiswing/) pour plus de détails. Évitez d'utiliser des mises en page 'null', les mises en page pixel parfaites sont une illusion dans la conception moderne de l'interface utilisateur. Il y a trop de facteurs qui affectent la taille individuelle des composants, dont vous ne pouvez contrôler aucun. Swing a été conçu pour fonctionner avec les gestionnaires de mise en page, en éliminant ceux-ci conduira à aucune fin des problèmes et des problèmes que vous passerez de plus en plus de temps à rectifier – MadProgrammer