第二次作业
2016-03-18 22:35
363 查看
JComboBox的使用方法:
JComboBox是swing种的下拉菜单控件。最常使用的函数应该是addItem()方法,可以为该控件添加一个个下拉选项。
然后要处理选中某个选项的事件,可以添加ItemListener监听器。
[java] view plain copy
comboBox1.addItemListener(new java.awt.event.ItemListener(){
public void itemStateChanged(java.awt.event.ItemEvent e){
func(e);//处理事件的函数
}
});
但是有可能会对一个选择事件处理两次。假设func(e)函数中输出a,则在一次选择后,会发现输出了aa,这是因为itemStateChanged()函数与itemState有关,而itemState状态有两个:Selected和Unselected。即在一次选择的过程中,实际出发了两个事件,unselect上一次选中的事件,select本次选中的事件。
import java.awt.BorderLayout;
import java.awt.Container;
import java.awt.Dimension;
import java.awt.FlowLayout;
import java.awt.GridLayout;
import java.awt.Toolkit;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JTextField;
public class log {
public JFrame frame;
private JTextField log_text;
private JTextField name_text;
public log() {
makeframe();
}
public void makeframe(){
frame =new JFrame("登录程序");
Container contentpane=frame.getContentPane();
}
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
new log();
}
}
JComboBox是swing种的下拉菜单控件。最常使用的函数应该是addItem()方法,可以为该控件添加一个个下拉选项。
然后要处理选中某个选项的事件,可以添加ItemListener监听器。
[java] view plain copy
comboBox1.addItemListener(new java.awt.event.ItemListener(){
public void itemStateChanged(java.awt.event.ItemEvent e){
func(e);//处理事件的函数
}
});
但是有可能会对一个选择事件处理两次。假设func(e)函数中输出a,则在一次选择后,会发现输出了aa,这是因为itemStateChanged()函数与itemState有关,而itemState状态有两个:Selected和Unselected。即在一次选择的过程中,实际出发了两个事件,unselect上一次选中的事件,select本次选中的事件。
import java.awt.BorderLayout;
import java.awt.Container;
import java.awt.Dimension;
import java.awt.FlowLayout;
import java.awt.GridLayout;
import java.awt.Toolkit;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JTextField;
public class log {
public JFrame frame;
private JTextField log_text;
private JTextField name_text;
public log() {
makeframe();
}
public void makeframe(){
frame =new JFrame("登录程序");
Container contentpane=frame.getContentPane();
JPanel northPanel = new JPanel(new GridLayout(7, 1)); JPanel north1=new JPanel(new FlowLayout()); JPanel north2=new JPanel(new FlowLayout()); JPanel north3=new JPanel(new FlowLayout()); JTextField Name_text = new JTextField(16); JTextField Log_text = new JTextField(16); JLabel Name=new JLabel("用户名"); // contentpane.add(Name,BorderLayout.NORTH); JLabel Log=new JLabel("登录 密码"); north1.add(Name); north2.add(Log); north1.add(Name_text); north2.add(Log_text); JButton yes=new JButton("确定"); JButton no=new JButton("取消"); north3.add(yes); north3.add(no); //contentpane.add(Log,BorderLayout.SOUTH); contentpane.add(northPanel); northPanel.add(north1); northPanel.add(north2); northPanel.add(north3); String[] list={"尹鑫磊","S卞","B琛"}; JComboBox ComboBox=new JComboBox(list); ComboBox.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent e) { // TODO Auto-generated method stub JComboBox ComboBox = (JComboBox)e.getSource(); String petName = (String)ComboBox.getSelectedItem(); String petName1 = (String)ComboBox.getToolTipText(); updateLabel(petName); System.out.println(petName); System.out.println(petName1); } public void updateLabel(String petName) { // TODO Auto-generated method stub }}); yes.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent e) { // TODO Auto-generated method stub JOptionPane.showMessageDialog(frame, "正确", "登陆成功", JOptionPane.INFORMATION_MESSAGE); }}); no.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent e) { // TODO Auto-generated method stub System.exit(0); }}); north1.add(ComboBox); frame.setVisible(true); Dimension d = Toolkit.getDefaultToolkit().getScreenSize(); frame.setLocation(d.width/2 - frame.getWidth()/2, d.height/2 - frame.getHeight()/2); frame.pack();
}
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
new log();
}
}
相关文章推荐
- Linux网络流量监控与分析工具Ntopng
- UESTC758(贪心)
- The VMware Authorization Service is not running
- 2015春季练习——一道水题的思考
- couldn't connect to server 127.0.0.1 shell/mongo.js:79
- jad 反编译的使用方法
- NSURLConnection使用详解
- SQL Server 2012 自动增长列,值跳跃问题
- 果园里的树
- bzoj 2007: [Noi2010]海拔
- 界面制作小例
- ImageView里面的图片实现同时移动缩放旋转 photoView自定义
- TalkingData 接入Cocos2d-x项目,symbol(s) not found for architecture arm64问题
- 多维数组json_encode之后产生对象而不是数组问题
- 命令模式
- 文件上传
- 逻辑斯蒂回归
- 字符串(后缀数组):POJ 3415 Common Substrings
- [leetcode 244] Shortest Word Distance II------------字典中两个字符串的最短距离
- (9)Python爬虫——下载PDF