「java表单多选」html表单多选
今天给各位分享java表单多选的知识,其中也会对html表单多选进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
java swing如何在JTable一个单元格添加多个复选框
java swing中在jTable中添加多个复选框的方式如下:
import java.awt.Component;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;
import javax.swing.table.*;
public class MyFirstJFrame extends JFrame {
// 作为测试的main方法
public static void main(String[] args) {
new MyFirstJFrame().setVisible(true);
}
/**
* 构造方法
*/
public MyFirstJFrame() {
InitialComponent();
}
/**
* 初始化组件的方法
*/
private void InitialComponent(){
// 设置窗体参数
// 设置布局模式
setLayout(null);
// 设置窗体大小
setSize(480, 360);
// 设置窗体居中(非常规方法)
setLocationRelativeTo(null);
// 关闭窗体退出程序
setDefaultCloseOperation(DISPOSE_ON_CLOSE);
// 初始化面板
panel = new JPanel();
panel.setSize(this.getWidth(), this.getHeight());
panel.setLocation(0,0);
panel.setLayout(null);
// 初始化表格
table = new JTable(new DefaultTableModel(new Object[][]{{"第一行"},{"第二行"},{"第三行"},{"第四行"}}, new String[]{"测试行1","测试行2"}){
/* (non-Javadoc)
* 重写方法,判断表单元格是否可编辑
* 可以通过row和column索引判断某一个单元格是否可编辑
* 此处设为都不可编辑
* @see javax.swing.table.DefaultTableModel#isCellEditable(int, int)
*/
@Override
public boolean isCellEditable(int row, int column) {
return false;
}
});
// 开始向表格中添加复选框(注意:此示例较为简单,缺省很多判断,也没有动态代码支持)
// 通过设置列渲染
// 方法一:直接方式 使用TableColumn的setCellRenderer方法(推荐)
// 此方法可以设置某一列的渲染(即使用某一个组件--即控件来显示单元格数据)
table.getColumnModel().getColumn(1).setCellRenderer(new TableCellRenderer(){
/*(non-Javadoc)
* 此方法用于向方法调用者返回某一单元格的渲染器(即显示数据的组建--或控件)
* 可以为JCheckBox JComboBox JTextArea 等
* @see javax.swing.table.TableCellRenderer#getTableCellRendererComponent(javax.swing.JTable, java.lang.Object, boolean, boolean, int, int)
*/
@Override
public Component getTableCellRendererComponent(JTable table,
Object value, boolean isSelected, boolean hasFocus,
int row, int column) {
// 创建用于返回的渲染组件
JCheckBox ck = new JCheckBox();
// 使具有焦点的行对应的复选框选中
ck.setSelected(isSelected);
// 设置单选box.setSelected(hasFocus);
// 使复选框在单元格内居中显示
ck.setHorizontalAlignment((int) 0.5f);
return ck;
}});
// 方法二:先设置列编辑器,然后设置单元格渲染
// 设置列编辑器
// 在以复选框为对象设置列编辑器时,必须保证该列能够被编辑,否则无法更改状态
// (此步骤可以省略,省略时不要忘记将列设为不可编辑)
// table.getColumnModel().getColumn(1).setCellEditor(new DefaultCellEditor(new JCheckBox()));
// 设置单元格渲染(这里是设置表格级别的渲染)
/*table.setDefaultRenderer(Object.class, new TableCellRenderer(){
@Override
public Component getTableCellRendererComponent(JTable table,
Object value, boolean isSelected, boolean hasFocus,
int row, int column) {
// 判断是否为需要渲染的列
if(column == 1){
// 和方法一基本一致
JCheckBox box = new JCheckBox();
box.setSelected(isSelected);
// 设置单选box.setSelected(hasFocus);
box.setHorizontalAlignment((int) CENTER_ALIGNMENT); // 0.5f
return box;
}
// 如果不是需要渲染的列,封装文本域显示数据
return new JTextArea(value.toString());
}});*/
// 在多选是需要按住Ctrl键或者鼠标按住拖过连续的需要选中的行,应该给用户说明
// 第一种方法是被推荐的,因为它具有选中的高亮显示,界面能更加友好
table.setSize(panel.getWidth(),panel.getHeight() - 90);
table.setLocation(0, 0);
btn = new JButton("Test");
btn.setSize(80,40);
btn.setLocation((panel.getWidth()) / 2 - 40, panel.getHeight() - 80);
// 按钮点击时显示当前选中项
btn.addActionListener(new ActionListener(){
@Override
public void actionPerformed(ActionEvent e) {
for(int rowindex : table.getSelectedRows()){
JOptionPane.showMessageDialog(null, rowindex + " " + table.getValueAt(rowindex, 0));
}
}});
panel.add(table);
panel.add(btn);
this.add(panel);
}
// 定义一些必要的组件
private JPanel panel;
private JTable table;
private JButton btn;
}
javagui中单选框如何获取选中的值
[Java教程]表单中单选、多选、选择框值的获取及表单的序列化
0 2015-12-17 13:00:11
总结了下在表单处理中单选、多选、选择框值的获取及表单的序列化,写成了一个对象。如下:1 var formUtil = { 2 // 获取单选按钮的值,如有没有选的话返回null 3 // elements为radio类的集合的引用 4 getRadioValue:function(elements) { 5 var value = null; // null表示没有选中项 6 // 非IE浏览器 7 if(elements.value != undefined elements.value != '') { 8 value = elements.value; 9 } else { 10 // IE浏览器 11 for(var i = 0, len = elements.length; i len; i++ ) { 12 if(elements[i].checked) { 13 value = elements[i].value; 14 break; 15 } 16 } 17 } 18 return value; 19 }, 20 21 // 获取多选按钮的值,如有没有选的话返回null 22 // elements为checkbox类型的input集合的引用 23 getCheckboxValue:function(elements) { 24 var arr = new Array(); 25 for(var i = 0, len = elements.length; i len; i++ ) { 26 if(elements[i].checked) { 27 arr.push(elements[i].value); 28 } 29 } 30 if(arr.length 0) { 31 return arr.join(','); 32 } else { 33 return null; // null表示没有选中项 34 } 35 }, 36 37 // 获取下拉框的值 38 // element为select元素的引用 39 getSelectValue:function(element) { 40 if(element.selec
关于jsp和servlet中对于表单中的多选控件提交的值
下拉列表,是一个input类型。不管有没有值,都会提交。也就是说,就算你没有选中,它也是一个可提交的表单元素,提交表单的时候,也会提交,只不过值为空,所以,后台得到值为空。
而复选框,如果你没有选中它,它就相当于不存在,提交的时候,它是不会提交的。因为它根本就不会提交,所以,在后台得到它的时候,它也不会存在,所以,一定是NULL。
不知道我说明白没有。
java表单多选的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于html表单多选、java表单多选的信息别忘了在本站进行查找喔。