收藏本站
设为主页
我要投稿
您现在的位置: 就爱学习网 >> 论文中心 >> 理工类 >> 论文中心正文 用户登陆 注册会员
最近更新
论毛泽东和邓小平各自二…01-27
推敲马克思的思路比解读…01-07
唯物主义与唯心主义之争…12-31
在学术论坛上给“革命和…12-27
网络在线游戏开发心得(服…12-19
将 Java 应用程序迁移到…12-19
怎样在指定的table单元格…12-19
编译、反编译、反反编译12-19
论马克思的改变哲学观基…12-13
彻底地批判列宁的“唯物…12-09
推荐专题

最新图文
最近推荐

广告同样精彩
怎样在指定的table单元格处生成下拉列表
作者:佚名 来源:本站原创 点击数: 更新时间:2006-12-19   
页面功能:【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口 【字体:
在写table时花了本人几天的时间,最后终于搞定了,与大家共同分享。
以下是调用方法:
/****************************************************************/

DefaultTableModel model = new DefaultTableModel(); //
/*设置表格模型*/
model.setDataVector(rowDatas, tableHeadName);

/*表格使用模型*/
// JBTable table = new JBTable(tableModel);
JBTable table = new JBTable();
table.setRowSelectionAllowed(true); //add
table.setModel(model);
JTextField text = new JTextField(); //

JComboBox com_size = new JComboBox(); //字体大小
com_size.addItem("1");
com_size.addItem("2");
com_size.addItem("3");
com_size.addItem("4");
com_size.addItem("5");
com_size.addItem("6");

JBMutiTypeEditor com_edit = new JBMutiTypeEditor(text, com_size); //
TableColumn aColumn1 = table.getColumn("属性");
aColumn1.setCellEditor(com_edit);

/****************************************************************/
上边代码没什么特别的,关键在以下的类。

package jbpd.application;

import javax.swing.*;
import java.awt.event.*;
import java.util.*;
import java.awt.*;
import javax.swing.table.*;
import java.util.EventObject;
import javax.swing.table.*;

class JBMutiTypeEditor
extends DefaultCellEditor {
JTable editingTable = new JTable();
JTextField textComponent;
JComboBox comboComponent;
boolean textOrNot = true;

public JBMutiTypeEditor(JTextField text, JComboBox combo) {
super(text);
textComponent = text;
comboComponent = combo;
}

public void setTextOrNot(boolean textOrNot) {
this.textOrNot = textOrNot;
}

public Component getTableCellEditorComponent(JTable table, Object value,
boolean isSelected,
int row, int column) {
editingTable = table;
String flag = (String) table.getValueAt(row, 0);
//与jbpage表中的“页面字体”列对应
if (flag.equals("存储方式") || flag.equals("是否被选中")) {
String item = (value != null) ? value.toString() : "1";
DefaultComboBoxModel model = (DefaultComboBoxModel) comboComponent.
getModel();
for (int i = 0; i < model.getSize(); i++) {
String aItem = (String) model.getElementAt(i);
if (aItem.equals(item)) {
comboComponent.setSelectedIndex(i);
}
}
return comboComponent;
}
if (flag.equals("字体大小") && row == 3) {
String item = (value != null) ? value.toString() : "1";
DefaultComboBoxModel model = (DefaultComboBoxModel) comboComponent.
getModel();
for (int i = 0; i < model.getSize(); i++) {
String aItem = (String) model.getElementAt(i);
if (aItem.equals(item)) {
comboComponent.setSelectedIndex(i);
}
}
return comboComponent;
}
else {
textComponent.setText( (value != null) ? value.toString() : "");
return textComponent;
}
}

public boolean stopCellEditing() {
JTable aTable = this.editingTable;
int rowNo = aTable.getEditingRow();
String flag = "";
if (rowNo != -1) {
flag = (String) aTable.getValueAt(rowNo, 0);
}
if (flag.equals("存储方式")|| flag.equals("是否被选中")) {
this.delegate.setValue(comboComponent.getSelectedItem());
}
if(flag.equals("字体大小")){
this.delegate.setValue(comboComponent.getSelectedItem());
}
return super.stopCellEditing();
}
}
百度搜索:怎样在指定的table单元格处生成下拉列表 论文中心录入:313770200    责任编辑:admin 
发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
  • 上一个论文中心:

  • 下一个论文中心:
  • 相关内容
    没有相关论文中心
    网友评论:(只显示最新10条.评论内容只代表网友观点,与本站立场无关!)
    广告同样精彩
    Copyright 2006-2008 92study.com .就爱学习网 All rights reserved.
    联系方式:Email:92study@163.com |
    免责申明:本网不承担任何由内容提供商提供的信息所引起的争议和法律责任