ajouter une icône et du texte dans JMenu en swing
Je suis en train de travailler sur des balançoires. J'ai créer un écran principal composé de 10 menus.
J'ai créé le formulaire par JFrame et menu par JMenu. Maintenant que le menu doit contenir du texte et des images à la fois et l'action effectuée méthode doit être appelée en cliquant sur le menu de sorte que l'action peut être effectuée sur le en cliquant sur le bouton menu.
Droit maintenant, je suis en train de faire Jmenu avec JMenuItem et l'icône sur l'icône de l'image, mais je veux que le menu avec l'icône et le texte
mon code actuel est
public class MenuScreen extends JFrame implements ActionListener{
Container cp;
JMenuBar menuBar;
JLabel logo;
public MenuScreen() {
super("");
cp=this.getContentPane();
cp.setBackground(Color.gray);
menuBar= new JMenuBar();
logo=new JLabel(im);
cp.add(logo);
logo.setBounds(100,80,500,350);
helpmenu= new JMenu(" Help ");
homemenu=new JMenu(" Home ");
fieldsmenu= new JMenu(" Fields ");
backmenu= new JMenu(" Back ");
forwardmenu= new JMenu(" Forward ");
panelmenu= new JMenu(" Panel ");
searchmenu= new JMenu(" Search ");
quickmenu= new JMenu(" Quick ");
infomenu= new JMenu(" Info ");
exitmenu= new JMenu(" Exit ");
mastermenu= new JMenu(" Master ");
tarrifmenu= new JMenu(" Tarrif ");
contactmenu= new JMenu(" Contact ");
webmenu= new JMenu(" Web ");
wordmenu= new JMenu(" Word ");
legaldictionarymenu= new JMenu(" LegalDictionary ");
budgetmenu=new JMenu(" Budget 2012 2013 ");
memberdetailmenu= new JMenu(" Member Details ");
Font f1= new Font("Arial",Font.BOLD,16);
budgetmenu.setFont(f1);
legaldictionarymenu.setFont(f1);
helpmenu.setFont(f1);
JMenuItem backmenuitem= new JMenuItem(backicon);
backmenu.add(backmenuitem);
JMenuItem exitmenuitem= new JMenuItem(exiticon);
exitmenu.add(exitmenuitem);
menuBar.add(helpmenu);
menuBar.add(homemenu);
menuBar.add(fieldsmenu);
menuBar.add(backmenu);
menuBar.add(forwardmenu);
menuBar.add(panelmenu);
menuBar.add(searchmenu);
menuBar.add(quickmenu);
menuBar.add(infomenu);
menuBar.add(exitmenu);
menuBar.add(mastermenu);
menuBar.add(tarrifmenu);
menuBar.add(contactmenu);
menuBar.add(webmenu);
menuBar.add(wordmenu);
menuBar.add(legaldictionarymenu);
menuBar.add(budgetmenu);
menuBar.add(memberdetailmenu);
setJMenuBar(menuBar);
/*
Adding Listeners to the menus where required
*/
searchmenu.addActionListener(this);
}
public void actionPerformed(ActionEvent ae)
{
JOptionPane.showMessageDialog(null,"clicked");
if(ae.getActionCommand().equals("Search"))
{
SearchForm frm=new SearchForm();
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
frm.setBounds(0,0,screenSize.width, screenSize.height);
frm.setVisible(true);
}
}
public static void main(String args[])
{
MenuScreen frm= new MenuScreen();
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
frm.setBounds(0,0,screenSize.width, screenSize.height);
frm.setVisible(true);
}
}
s'il vous plaît aider moi.
Veuillez utiliser de manière cohérente et logique de retrait pour les blocs de code. Le Code en question est beaucoup plus utile si elle est lisible. Avec la façon dont le code est indenté, j'ai pu lire mon chien, un petit-déjeuner plus facilement.
Quelques conseils 1) Si la question est "comment faire pour ajouter l'icône et le texte de l'élément de menu?" ajouter un code qui contient un menu avec un élément de menu plutôt que de 10 menus et plus de 100 lignes de code. 2)
Quelques conseils 1) Si la question est "comment faire pour ajouter l'icône et le texte de l'élément de menu?" ajouter un code qui contient un menu avec un élément de menu plutôt que de 10 menus et plus de 100 lignes de code. 2)
logo.setBounds(100,80,500,350);
ne le faites pas, cela va causer des problèmes plus tard. Au lieu d'utiliser des mises en page (avec un rembourrage & frontières).OriginalL'auteur ADESH RAJPUT | 2012-09-21
Vous devez vous connecter pour publier un commentaire.
Utiliser le constructeur
JMenuItem(String text, Icon icon)
Si vous voulez JMenu avec l'Icône et le Texte ne
veuillez lire le chapitre sur la façon d'utiliser JMenu/Éléments dans le tutoriel référencé dans le swing-tag wiki - simple api questions sont ennuyeux pour les aides et ne vous aide pas trop ... à la fin de la journée, vous aurez à apprendre l'api que vous utilisez et qui, en définitive, ne peut être fait que par la lecture 🙂
OriginalL'auteur basiljames
- Pour la
JMenuItem
utilisationJMenuItem((String text, Icon icon)
constructeur,- Et pour
JMenu
essayez d'utiliser le constructeur qui prend Chaîne comme ArgumentJMenu(String s)
, et méthodesetIcon()
Pour le réglage de la clé spéciale options sur les MenuItems utilisation
setAccelerator()
Par exemple:
myItem.setAccelerator(
KeyStroke.getKeyStroke(KeyEvent.VK_P, ActionEvent.CTRL_MASK));
OriginalL'auteur Kumar Vivek Mitra
Définir l'icône et le texte de votre
Action
que vous placez sur le menu (à l'aide de la paire clé-valeur mécanisme). Les clés sont définis dans leAction
interface.La classe javadoc de la
Action
de l'interface contient également un bel aperçu de la table de la disposition des touches, et de ce qu'elles affectent.OriginalL'auteur Robin