Alguém sabe como eu faço: quando clico no botão direito do mouse em cima de um JEditorPane, apareça opções de menu, se eu for selecionar tudo, gostaria que tudo que estivesse escrito no JEditorPane ficasse selecionado…
Muito Obrigado!!!
Alguém sabe como eu faço: quando clico no botão direito do mouse em cima de um JEditorPane, apareça opções de menu, se eu for selecionar tudo, gostaria que tudo que estivesse escrito no JEditorPane ficasse selecionado…
Muito Obrigado!!!
para aparecer o menu com um clique do mouse use o JPopupMenu e eventos relacionado ao mouse tipo mousePressed, e para selecionar todo o text de um JEditorPane use: seu_editor_pane.selecedAll();
Como o exemplo :
import java.awt.<em>;
import java.awt.event.</em>;
import javax.swing.<em>;
import javax.swing.text.MaskFormatter;
import javax.swing.event.</em>;
/**
public class Frame1 extends JFrame{
JPanel contentPane;
JScrollPane jScrollPane1 = new JScrollPane();
JEditorPane jEditorPane1 = new JEditorPane();
JPopupMenu jPopupMenu1 = new JPopupMenu();
JMenuItem jMenuItem1 = new JMenuItem();
JMenuItem jMenuItem2 = new JMenuItem();
//Construct the frame
public Frame1() {
enableEvents(AWTEvent.WINDOW_EVENT_MASK);
try {
jbInit();
}
catch(Exception e) {
e.printStackTrace();
}
}
//Component initialization
private void jbInit() throws Exception {
contentPane = (JPanel) this.getContentPane();
contentPane.setLayout(null);
this.setSize(new Dimension(400, 300));
this.setTitle(“Frame Title”);
jScrollPane1.setBounds(new Rectangle(13, 42, 347, 216));
jScrollPane1.addMouseListener(new Frame1_jScrollPane1_mouseAdapter(this));
jEditorPane1.setText(“jEditorPane1”);
jEditorPane1.addMouseListener(new Frame1_jEditorPane1_mouseAdapter(this));
jMenuItem1.setText(“Selecionar Tudo”);
jMenuItem1.addMouseListener(new Frame1_jMenuItem1_mouseAdapter(this));
jMenuItem2.setText(“Sair”);
jPopupMenu1.addMouseListener(new Frame1_jPopupMenu1_mouseAdapter(this));
contentPane.add(jScrollPane1, null);
jScrollPane1.getViewport().add(jEditorPane1, null);
jPopupMenu1.add(jMenuItem1);
jPopupMenu1.addSeparator();
jPopupMenu1.add(jMenuItem2);
}
//Overridden so we can exit when window is closed
protected void processWindowEvent(WindowEvent e) {
super.processWindowEvent(e);
if (e.getID() == WindowEvent.WINDOW_CLOSING) {
System.exit(0);
}
}
void jEditorPane1_mousePressed(MouseEvent e) {
jPopupMenu1.setVisible(true);
jPopupMenu1.setLocation(e.getX(),e.getY());
}
void jMenuItem1_mousePressed(MouseEvent e) {
jEditorPane1.selectAll();
}
}
class Frame1_jScrollPane1_mouseAdapter extends java.awt.event.MouseAdapter {
Frame1 adaptee;
Frame1_jScrollPane1_mouseAdapter(Frame1 adaptee) {
this.adaptee = adaptee;
}
}
class Frame1_jEditorPane1_mouseAdapter extends java.awt.event.MouseAdapter {
Frame1 adaptee;
Frame1_jEditorPane1_mouseAdapter(Frame1 adaptee) {
this.adaptee = adaptee;
}
public void mousePressed(MouseEvent e) {
adaptee.jEditorPane1_mousePressed(e);
}
}
class Frame1_jPopupMenu1_mouseAdapter extends java.awt.event.MouseAdapter {
Frame1 adaptee;
Frame1_jPopupMenu1_mouseAdapter(Frame1 adaptee) {
this.adaptee = adaptee;
}
Muito obrigado, mais eu preciso de clicar somente com o botao direito do mouse, e esse codigo, apertando qualquer um dos dois surje a ação…
obrigado, se puder ajudar de novo, fico grato