首页
学习
活动
专区
圈层
工具
发布

Java Swing JTable

1 简介 JTable用于显示和编辑常规的二维单元格表。有关面向任务的文档和使用JTable的示例,请参见Java教程中的如何使用表。...表=新的JTable(dataModel); JScrollPane scrollpane =新的JScrollPane(table); JTable通常放置在JScrollPane内部。...JTable仅使用整数来引用它显示的模型的行和列。 JTable只是采用表格形式的单元格范围,并在绘制过程中使用getValueAt(int,int)从模型中检索值。...添加表格到容器中有两种方式: 添加到普通的中间容器中,此时添加的jTable只是表格的行内容,表头(jTable.getTableHeader())需要额外单独添加。...此添加方式适合表格行数确定,数据量较小,能一次性显示完的表格; 添加到JScrollPane滚动容器中,此添加方式不需要额外添加表头,jTable添加到jScrollPane中后,表头自动添加到滚动容器的顶部

6.3K10

JTable常见用法细则+设置某列可编辑+滚动表格

JTable常见用法细则 JTable是Swing编程中很常用的控件,这里总结了一些常用方法以备查阅.欢迎补充,转载请注明作者与出处. 一....JTable table = new JTable(); 2)  以表头和表数据创建表格. [图片] 3)  以表头和表数据创建表格,并且让表单元格不可改....int count=5; tableModel.setColumnCount(count); 4) 取得表格列数 int cols = table.getColumnCount(); 5) 添加列...) tableModel.getValueAt(row, column);// 取单元格数据,row是行号,column是列号 2) 填充数据到表格....注:数据是Member类型的链表,Member类如下: [图片] 填充数据的代码: [图片] 2) 取得表格中的数据 [图片] 五.取得用户所选的行 1) 取得用户所选的单行 [图片]

3.4K00
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    高级Swing 组件

    那么我们应该如何在列表框中添加或者删除项目呢?让人有些奇怪的是,JList类中没有任何方法可以用来实现这些操作。相反,你必须进一步了解列表组件的内部设计情况。...虽然JList类能够自动显示字符串和图标,但是你必须为所有定制的图形将一个列表单元格绘制器安装到JList对象中。...参数:list 要绘制其单元格的列表 item 要绘制的项目 index 项目存放在列表模型中时使用的索引 isSelected * 如果设定的单元格被选定,则返回true hasFocus 如果设定的单元格拥有该焦点...如果你的树实际上可以进行节点的添加和删除,那么你只需要考虑如何触发这些事件。在示例代码中,我们将要讲述如何触发一个事件,也就是如何用一个新对象来取代根节点。...当JTable需要查看某个值时,过滤器模型便计算实际的行索引,并且从模型中获取该值。

    48710

    如何在Java中使用Table

    列和行之间的交点称为单元格,用于保存单条数据。 在Java中,开发人员可以使用JTable方法在其应用程序中创建表。JTable是从JComponent类继承的Swing组件。...如何在Java中创建表 要创建表,需要创建JTable类的实例。...另一个值得关注的问题是,如果您在数据库对象中查询特定值,则必须将所有值复制到数组或向量中。 为了避免这些问题,您可以使用模型创建表格。 如何在Java中使用模型创建表 首先,了解如何处理表数据很重要。...如何在Java中管理列宽和列高 如果要设置行的高度,可以使用setRowHeight()方法。...上面显示的代码示例将表直接添加到JFrame容器中。但是,您可以将表添加到滚动窗格中,这样当数据超出容器时,用户可以轻松浏览数据。

    2.7K40

    java swing项目桌面软件还是蛮香的,至少有了我自己的桌面软件|Java 开发实战

    2、先将JTable加入jscrollpane(滚动条)中,然后在将滚动条加入到对应的控件中(Jpanel或者是Jframe).java swing 开发中加入滚动条是很常见的操作,所以这种方式的加入表格还是很推荐的...我需要一个几行几列的表格,至于每个单元格显示的内容就是通过getValueAt这个方法实现的,到这里我们就实现了,jtable的model自定义显示。...return getValueAt(0, c).getClass();这样我们就可以显示一些其他的控件了,还有一些比如每行都需要一行按钮来实现修改改行的功能,这些按钮正常我们不需要再数据中添加(避免数据过于庞大...),如果不在数据中添加那么我们的getClass方法就起不到作用,这个用到了下面的知识来解决JTable渲染和编辑这种呢其实就是上面的getClass底层的实现方式,JTable中源码我们上面可以看出JTable...通过返回的不同的类来调用不同的渲染器,现在我们不通过返回类的方式来渲染,而是自己定义一个渲染器,然后通过JTable提供的方法设定用该渲染器渲染该单元格!

    80110

    java.awt.swing菜单组件

    例12-13运行结果 图12.15中,运行程序先创建了JFrame窗体,然后创建菜单栏、菜单、菜单项,调用setJMenuBar(JMenuBar menuBar)方法将菜单栏添加进窗体,在“退出”菜单项中添加事件监听...例12-14中,先创建了JFrame窗体,然后创建菜单、菜单项,在“退出”的菜单项中添加事件监听,点击“退出”窗体就会关闭,最后为JFrame窗体添加鼠标点击事件监听器,实现右键弹出菜单的效果。...public JTable(int numRows, int c) 使用 DefaultTableModel 构造具有 numRows 行和 numColumns 列个空单元格的 JTable。...,还需要传入一个一维数据作为列标题,接下来通过一个案例来演示JTable类的使用,如例12-15所示。...11 JTable table = new JTable(data, arr); 12 jFrame.add(new JScrollPane(table)); 13

    67310

    java swing一篇轻松学习(高考后可以自学)

    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //创建一个标签 JLabel lable=new JLabel("lable就是一个文本"); //获取本窗口的内容窗格...Container c=getContentPane(); //将lable标签组件添加到内容窗格上 c.add(lable); //设置本窗口是否可见 setVisible(true...scrollPane=new JScrollPane(textArea); //把组件添加到面板中 setPreferredSize(new Dimension(450...getRowCount() 返回 JTable 中可以显示的行数(给定无限空间) getRowSorter() 返回负责排序的对象 getSelectedColumn() 返回第一个选定列的索引,如果没有选定的列...isEditing() 如果正在编辑单元格,则返回 true selectAll() 选择表中的所有行、列和单元格 setColumnSelectionInterval(int index0,int

    10.7K10

    图书管理系统代码 4SearchFrame (…

    javax.swing.JOptionPane; import javax.swing.JPanel; import javax.swing.JRadioButton; import javax.swing.JScrollPane...("按编号",true); Radio_name   = new JRadioButton("按书名"); Radio_author = new JRadioButton("按作者"); // 将按钮添加到按钮组中...int m = Integer.parseInt(textField.getText()); book_search =(Book)obo.readObject();//先读取第一个对象 // 如果文本框中输入的文字出现在某个对象中执行以下操作...Radio_author.isSelected()){ int m=0; do{ if(m<=n){ book_search =(Book)obo.readObject();//先读取第一个对象 // 如果文本框中输入的文字出现在某个对象中执行以下操作...JTable table_result = SearchFrame.this.getJTabel(); JScrollPane jsp = new JScrollPane(table_result);

    1.4K20

    《Java 2 图形设计卷Ⅱ- SWING》第2章 Swing的基本知识

    小应用程序或应用程序的内容(即组件)必须添加到内容窗格中。如果把组件直接添加到JApplet或JFrame的实例中,则会弹出一个异常信息,指出只能把组件添加到内容窗格中。    ...Swing提供了一个替代AWT重量滚动窗格的轻量组件——JScrollPane组件。由于JScrollPane是轻量的,所以任何添加到JScrollPane实例中的重量组件都将在这个滚动窗格之上显示。...图2-9所示的小应用程序说明了把一个重量组件添加到JScrollPane实例中并滚动重量组件使其超出滚动窗格边框的情况。  ...这个小应用程序为滚动窗格设置了首选大小,并把滚动窗格添加到其内容窗格中。  图2-9所示的组件效果是我们不想要的。遗憾的是,与弹出式菜单不同,JScrollPane没有能实例化为重量组件的选项。...组件应该添加到根窗格的内容窗格中,同理,必须为内容窗格设置布局管理器而不是为小应用程序和应用程序布局管理器。

    3.1K20

    java winform开发之JTable全攻略

    的行添加标识,如行id等;4)怎样在JTable中动态添加新行;     1)JTable的基本用法: 我用的IDE是NetBeans,由于也是简单做几个页面的客户端,主要还是Web开发的,所以暂时不打算深究...2)怎样添加行点击事件 首先,在JTable的设计视图中先选中JTable,然后右击,在事件的弹出菜单中依次选中"mouse-click”就可以捕捉表格的点击事件了,在这个事件监听方法中,会传入一个java.awt.event.MouseEvent...添加行标识 我们知道,JTable的每一个单元格,要求的值类型是一个Object的实例,也就是说,只要是一个对象就可以了,这个机制,给了我们非常大的发挥空间,我们可以在一个单元格中存放任意类型的对象,...只要在这个对象中重写一下toString()方法,将我们希望在单元格中显示的内容return出来就可以了,只JTable本身,并没有提供设置行id等识别表格行对象的方法,所以我想到了自己定义一个单元格对象...4)怎样在JTable中动态添加新行 其实这个问题非常简单,只要根据列模型生成相应的行对象,然后通过调用JTable的model对象的addRow方法就ok了,由于过于简单,所以直接贴代码来说明问题:

    1.6K30
    领券