读书人

最牛的 JTable 的有关问题200分相送

发布时间: 2012-03-08 13:30:13 作者: rapoo

最牛的 JTable 的问题,200分相送,出血本了,从没有这么放过血(不够分在给)
问个关于 table 的 renderer,editor的问题

需要实现 JTreeTable 这样的组件,我们实现了这个组件,(就是sun网站上那个,具体就是http://java.sun.com/products/jfc/tsc/articles/treetable2/index.html)。但是,一个功能,不知道如何实现。

问题即:
当我们缩小表格中 放tree的这个列时,树的内容 被掩盖了,这时,我想出现滚动条,就如 NetBeans 中实现的那样。

就是说,放tree的这整个列,如果需要的话,就出现 滚动条

我认为,这种滚动条是针对表的某个列产生的,而不是针对这个列 的renderer,或editor 所产生的,那么要如何实现呢。给些提示


图位于 NetBeans IDE 6.0 M10 中(Tools--> Options--> 弹出的对话框的Advanced Options)

谢谢大家:)

[解决办法]
放Tree的列?
你是说在Table的一列中,放入的数据是tree的节点?
如果是那样的话最简便的方法就是做两个table,一个table只装tree节点的那一列,另一个庄表格的其他数据,是要解决这个问题吗?
[解决办法]
up
[解决办法]
http://blog.elevenworks.com/
这里有你需要的例子:Screenshot of TreeTable and Toolbar
[解决办法]
挺难呦
[解决办法]

//Send questions, comments, bug reports, etc. to the authors:

//Rob Warner (rwarner@interspatial.com)
//Robert Harris (rbrt_harris@yahoo.com)

import org.eclipse.swt.SWT;
import org.eclipse.swt.custom.*;
import org.eclipse.swt.layout.*;
import org.eclipse.swt.widgets.*;

/**
* This class demonstrates TableTree
*/
public class TableTreeTest {
// The number of rows and columns
private static final int NUM = 3;

/**
* Runs the application
*/
public void run() {
Display display = new Display();
Shell shell = new Shell(display);
shell.setText( "TableTree Test ");
createContents(shell);
shell.pack();
shell.open();
while (!shell.isDisposed()) {
if (!display.readAndDispatch()) {
display.sleep();
}
}
display.dispose();
}

/**
* Creates the main window 's contents
*
* @param shell the main window
*/
private void createContents(final Shell shell) {
shell.setLayout(new FillLayout());

// Create the TableTree and set some attributes on the underlying table
TableTree tableTree = new TableTree(shell, SWT.NONE);
Table table = tableTree.getTable();
table.setHeaderVisible(true);
table.setLinesVisible(false);

// Create the columns, passing the underlying table
for (int i = 0; i < NUM; i++) {
new TableColumn(table, SWT.LEFT).setText( "Column " + (i + 1));
}

// Create the data
for (int i = 0; i < NUM; i++) {
// Create a parent item and add data to the columns
TableTreeItem parent = new TableTreeItem(tableTree, SWT.NONE);
parent.setText(0, "Parent " + (i + 1));
parent.setText(1, "Data ");
parent.setText(2, "More data ");

// Add children items
for (int j = 0; j < NUM; j++) {
// Create a child item and add data to the columns
TableTreeItem child = new TableTreeItem(parent, SWT.NONE);
child.setText(0, "Child " + (j + 1));
child.setText(1, "Some child data ");
child.setText(2, "More child data ");
}


// Expand the parent item
parent.setExpanded(true);
}

// Pack the columns
TableColumn[] columns = table.getColumns();
for (int i = 0, n = columns.length; i < n; i++) {
columns[i].pack();
}
}

/**
* The application entry point
*
* @param args the command line arguments
*/
public static void main(String[] args) {
new TableTreeTest().run();
}
}


希望这段代码对你有帮助
[解决办法]
private void createContents(final Shell shell) {

Shell swt的吧?

读书人网 >J2SE开发

热点推荐