-1
コンテンツペインにMouseListener
が設定されたプログラムを作成しました。問題は私がsetEnabled(false)
とsetEditable(false)
と呼んでもJTextField
をクリックしても私のは発生しません。残りはうまくいきます。だから私の質問:どのように私はJTextField
が含まれているデフォルトのMouseListener
を無効にするのですか?JTextFieldのデフォルトのMouseListenerを無効にする方法は?
編集:テスト目的のために:
import java.awt.EventQueue;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import javax.swing.JFrame;
import javax.swing.JTextField;
public class test extends JFrame implements MouseListener{
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
test frame = new test();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
test(){
setBounds(0,0,500,500);
addMouseListener(this);
setLayout(null);
JTextField n = new JTextField("test");
n.setEditable(false);
n.setBounds(200,200,40,20);
add(n);
}
@Override
public void mouseClicked(MouseEvent arg0) {
System.out.println("test");
}
@Override
public void mouseEntered(MouseEvent arg0) {
// TODO Auto-generated method stub
}
@Override
public void mouseExited(MouseEvent arg0) {
// TODO Auto-generated method stub
}
@Override
public void mousePressed(MouseEvent arg0) {
// TODO Auto-generated method stub
}
@Override
public void mouseReleased(MouseEvent arg0) {
// TODO Auto-generated method stub
}
}
可能な重複[のMouseListener/ActionListenerを削除する方法JTextField](https://stackoverflow.com/questions/2627946/how-to-remove-mouselistener-actionlistener-on-a-jtextfield) – vinS
あなたはフィールドを無効にしました。仕事は? – Kayaman
私はそれを無効にしたので、その文字を選択することはできません。 MouseListenerは親からのものです。 contentPaneまたはその上のJLabelをクリックするだけで動作します。ちょうどJTextFieldは望みません。 – Ragnaroek511