重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
CheckBox chkbox = new CheckBox();
成都创新互联坚持“要么做到,要么别承诺”的工作理念,服务领域包括:网站建设、网站设计、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的铜官网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!
这是复选框。
它有个方法 boolean getState()
返回选中状态的。
使用如下:
chkbox.getState()
用你的说法 ,那就应该如下写法:
if(chkbox.getState()) //选中
//这里把数据库更新为1
else //未选中
//这里把数据库更新为0
isSelected()不可以用于判断JCheckBox()是否被选中,因为该函数继承自JButton,只要点击JCheckBox,该函数就返回true。可以测试如下:
ArrayListString rst = new ArrayListString();
JCheckBox box = new JCheckBox();
if(box.isSelected()){
rst.add(box.getText());
}可以看出当box被勾掉选中时,rst.add(box.getText())语句照样执行。
监听JcheckBox的改变事件,记录一个boolean变量,随着改变而切换其值,从而保证与是否选中同步
改下layout就行了
import java.awt.BorderLayout;
import java.awt.GridLayout;
import javax.swing.JCheckBox;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.WindowConstants;
public class NewJFrame extends javax.swing.JFrame {
private JScrollPane jScrollPane;
private JPanel jPanel;
private String[]str={"a","b","c","d","e","f","g","h","i","j","k","l"};
public static void main(String[] args) {
NewJFrame inst = new NewJFrame();
inst.setVisible(true);
}
public NewJFrame() {
super();
initGUI();
}
private void initGUI() {
try {
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
pack();
setSize(300, 120);
setLocationRelativeTo(null);
jPanel=new JPanel();
jScrollPane = new JScrollPane(jPanel);
getContentPane().add(jScrollPane,BorderLayout.CENTER);
jPanel.setLayout(new GridLayout(str.length/3+1, 3));
for (int i = 0; i str.length; i++) {
JCheckBox checkBox=new JCheckBox(str[i]);
jPanel.add(checkBox);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
使用request.getParameterValues("复选框名称"),返回String[]数组,不可使用request.getParameter(name),否则你只能得到一个值,你的页面上不可能只有一个同名的复选框吧?如果真的只有一个,那可以用request.getParameter(),否则请使用request.getParameterValues()
祝你好运!