2、尽量的将处理方法提炼出来尘肆轮单独作为一个独立的方法,在监听事件中调用。为第二个按派信钮添加一个监听事件,然后调用相应的方法就可以了。具体雹纤的问题你可以贴出你的代码来~~
效果图如下
参考代码如下
import java.awt.*import java.awt.event.*
import javax.swing.*
public class JCBFrame extends JFrame {
JComboBox<String> jcb
public JCBFrame() {
JPanel jp = new JPanel()
JLabel jl = new JLabel("选择喜欢的水果:")
String[] sg = { "苹果", "香蕉", "仿闷返桃子", "柑橘" }
jcb = new JComboBox<String>(sg)
jp.add(jl)
jp.add(jcb)
//JComboBox 添加 事件响应器, 当状态发生改备饥变时,进行响应
jcb.addItemListener(new ItemListener() {
@Override
public 罩野void itemStateChanged(ItemEvent e) {
//当选择发生了改变时,
if (e.getStateChange() == ItemEvent.SELECTED) {
JOptionPane.showMessageDialog(null, "我喜欢"+jcb.getSelectedItem())
}
}
})
add(jp, BorderLayout.NORTH)
setTitle("")
setSize(300, 200)
setLocationRelativeTo(null)
setDefaultCloseOperation(EXIT_ON_CLOSE)
setVisible(true)
}
public static void main(String[] args) {
new JCBFrame()
}
}
第一个问题:使用veiwMenuItem.addActionListener()方法添加监听器。具体使用可以查看JDK API第二个问伏培题,一时想卜坦到两种实现方法
1、你要知道,JPanel不单是一个组件,更是一个组件容器,所以你可以往其中添加一个表格组件,而这个表格组件则将你的查询结果显示出来
2、如果你不希望使用其他组件了的话,倒也可以重载paint()方法,直接将你要显示的信息“绘”出来。例如型厅桐:
public class DisplayPanel extends JPanel{
public void pain(Graphics g){
super.paint(g)
g.drawString(student.getName())
g.drawString(student.getNumber())
.... ....
}
}
然后将这个Panel添加到你原来的位置即可。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)