CheckBox的监听器怎么使用?? 我不太会用,给我举一个例子吧,看API文档,按照我自己的理解方式去做不行。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 import java.awt.*;import java.awt.geom.*;import java.awt.event.*;import java.awt.font.FontRenderContext;import java.awt.geom.AffineTransform;import javax.swing.*;import javax.swing.event.*;import javax.swing.text.*;import javax.swing.table.*;import java.util.*;/** * 2011-6-5 0:33:50 * @author Administrator */public class TJComboBox2 { JFrame frame; Container contentPane; JComboBox comboBox; JLabel label; public TJComboBox2(){ frame=new JFrame("ComboBox测试"); contentPane=frame.getContentPane(); contentPane.setLayout(new GridBagLayout()); setLabel(); add(contentPane, label, 0, 0, 1, 1); setComboBox(); add(contentPane, comboBox, 0, 1, 1, 0); frame.pack(); frame.setLocationRelativeTo(null); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setVisible(true); } public void setLabel(){ label=new JLabel(); label.setText("Swing 目前字体大小:"+label.getFont().getSize()); label.setHorizontalAlignment(JLabel.CENTER); label.setVerticalAlignment(JLabel.CENTER); label.setBackground(Color.red); label.setForeground(Color.green); label.setOpaque(true); Font font=new Font("楷体",Font.PLAIN,100);// label.setFont(font); String str=new String("Swing 目前字体大小:100"); Rectangle2D rect=font.getStringBounds(str, new FontRenderContext(new AffineTransform(), true, true)); label.setPreferredSize(new Dimension((int)rect.getWidth(),(int)rect.getHeight())); } public void setComboBox(){ Integer size[]={10,11,12,13,14,15,20,30,40,50}; DefaultComboBoxModel model=new DefaultComboBoxModel(size); comboBox=new JComboBox(model); comboBox.addItemListener(new ItemListener(){ Object lastValue; public void itemStateChanged(ItemEvent e) { Object o=comboBox.getSelectedItem(); if(lastValue!=null){ if(lastValue.equals(o)){ return; } } lastValue=o; int size; if(o instanceof String){ try{ size=Integer.parseInt((String)o); }catch(NumberFormatException nfe){ JOptionPane.showMessageDialog(frame, "输入的大小不是纯数字", "错误提示", JOptionPane.ERROR_MESSAGE); return; } } else{ size=(Integer)o; } DefaultComboBoxModel model=(DefaultComboBoxModel)comboBox.getModel(); if(model.getIndexOf(size)==-1){ model.addElement(size); } label.setText("Swing 目前字体大小:"+size); label.setFont(new Font(label.getFont().getName(),label.getFont().getStyle(),size)); } }); comboBox.setEditable(true); ComboBoxEditor editor=comboBox.getEditor(); comboBox.configureEditor(editor, "请输入或者直接选择"); } public void add(Container main,Container child,int gridx,int gridy,double weightx,double weighty){ GridBagConstraints c=new GridBagConstraints(); c.gridx=gridx; c.gridy=gridy; c.gridwidth=1; c.gridheight=1; c.weightx=weightx; c.weighty=weighty; c.fill=GridBagConstraints.BOTH; main.add(child,c); } public static void main(String args[]){ new TJComboBox2(); }} java 实体类 如何得到数据类型 第21题 若需要定义一个类域或类方法,应使用哪种修饰符? 关于HSQL的问题! 请教高手.高分相送 正则问题,送分。 何故? 怎样用JAVA语言实现对WORD文档的读写操作? 寻visibroker for java 4.51 的注册码? 我还是不知道如何在JB中调试helloworld程序,写在application中,运行出来只有一个空白板啊 接口定义 高分求一个取一定范围随机整数的程序。 课程设计最后一点小问题,急啊!!!
import java.awt.*;
import java.awt.geom.*;
import java.awt.event.*;
import java.awt.font.FontRenderContext;
import java.awt.geom.AffineTransform;
import javax.swing.*;
import javax.swing.event.*;
import javax.swing.text.*;
import javax.swing.table.*;
import java.util.*;
/**
* 2011-6-5 0:33:50
* @author Administrator
*/
public class TJComboBox2 {
JFrame frame;
Container contentPane;
JComboBox comboBox;
JLabel label;
public TJComboBox2(){
frame=new JFrame("ComboBox测试");
contentPane=frame.getContentPane();
contentPane.setLayout(new GridBagLayout());
setLabel();
add(contentPane, label, 0, 0, 1, 1);
setComboBox();
add(contentPane, comboBox, 0, 1, 1, 0);
frame.pack();
frame.setLocationRelativeTo(null);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
public void setLabel(){
label=new JLabel();
label.setText("Swing 目前字体大小:"+label.getFont().getSize());
label.setHorizontalAlignment(JLabel.CENTER);
label.setVerticalAlignment(JLabel.CENTER);
label.setBackground(Color.red);
label.setForeground(Color.green);
label.setOpaque(true);
Font font=new Font("楷体",Font.PLAIN,100);
// label.setFont(font);
String str=new String("Swing 目前字体大小:100");
Rectangle2D rect=font.getStringBounds(str, new FontRenderContext(new AffineTransform(), true, true));
label.setPreferredSize(new Dimension((int)rect.getWidth(),(int)rect.getHeight()));
}
public void setComboBox(){
Integer size[]={10,11,12,13,14,15,20,30,40,50};
DefaultComboBoxModel model=new DefaultComboBoxModel(size);
comboBox=new JComboBox(model);
comboBox.addItemListener(new ItemListener(){
Object lastValue;
public void itemStateChanged(ItemEvent e) {
Object o=comboBox.getSelectedItem();
if(lastValue!=null){
if(lastValue.equals(o)){
return;
}
}
lastValue=o;
int size;
if(o instanceof String){
try{
size=Integer.parseInt((String)o);
}catch(NumberFormatException nfe){
JOptionPane.showMessageDialog(frame, "输入的大小不是纯数字", "错误提示", JOptionPane.ERROR_MESSAGE);
return;
}
}
else{
size=(Integer)o;
}
DefaultComboBoxModel model=(DefaultComboBoxModel)comboBox.getModel();
if(model.getIndexOf(size)==-1){
model.addElement(size);
}
label.setText("Swing 目前字体大小:"+size);
label.setFont(new Font(label.getFont().getName(),label.getFont().getStyle(),size));
}
});
comboBox.setEditable(true);
ComboBoxEditor editor=comboBox.getEditor();
comboBox.configureEditor(editor, "请输入或者直接选择");
}
public void add(Container main,Container child,int gridx,int gridy,double weightx,double weighty){
GridBagConstraints c=new GridBagConstraints();
c.gridx=gridx;
c.gridy=gridy;
c.gridwidth=1;
c.gridheight=1;
c.weightx=weightx;
c.weighty=weighty;
c.fill=GridBagConstraints.BOTH;
main.add(child,c);
}
public static void main(String args[]){
new TJComboBox2();
}
}