你好,我试图建立一个网格布局GUI与鼠标监听器。因此,当单击网格中的特定单元格时,将显示信息。我不知道从哪里开始,任何帮助都会很好谢谢
我相信你有一个继承自JPanel或JFrame的类,里面有完整的GUI。然后,这个类应该实现mouseListener。那么你的类应该有类似的代码:
@override
public void mouseClicked(MouseEvent e){}
@override
public void mousePressed(MouseEvent e){}
@override
public void mouseEntered(MouseEvent e){}
@override
public void mouseReleased(MouseEvent e){
/*This method is being called when you release your click. It's better
then mouseClicked because mouseClicked is only called when you press
and release on the same pixel or Object (not sure about it)
*/
}
@override
public void mouseExiteded(MouseEvent e){}
在每个方法中你都可以得到
的来源MouseEvent e
使用Object source = e.getSource();
if (source == button1){
//Do sth
}if (source == button2){
//Do sth else
}if (source == radioButton1){
//Do whatever you want
}
那么你就有了对源代码的引用,所以你可以修改你想要的
在你的gridlayout中,用一些组件(如Button或Label)设置所有的网格。您可以在添加的组件上设置侦听器,并在单击组件时显示信息
要正确使用griddbaglayout,您应该首先处理 griddbagconstraints 。然后,您应该使用ActionListener接口来处理鼠标点击。如果单元格的类型是label,则可以使用myLabel.setText(")隐藏文本,并使用myLabel放置文本。setText("要显示的信息")。如果你需要更多的帮助,只要问:D和+1,如果它有帮助^^