求一个swing分页组件 用jtable 数据多了 就是下拉列表框的样式了 感觉不好谁能提供一个swing分页组件?类似于flex表格那种 可以选择跳到第几行谢谢 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 flex表格是啥样子的?没见过.不过jtable也能跳转行啊,这样就可以了啊! public void scrollRowToVisible(int row) { super.scrollRectToVisible(new Rectangle(0,row * getRowHeight(row),getWidth(),getRowHeight(row))); } flex表格 其实样子就是一般的表格 只是加了上一页 下一页按钮 和输入框直接跳到该页其实我就是想偷懒 用别人封装好的swing组件 自己传一个list或者别的什么容器给这个组件 就能自动显示好。。 这个方法怎么用?我一般用jtable显示数据是这样的先自己封装一个resulttablemodel继承AbstractTableModel 然后重写AbstractTableModel中四个方法分别用来定义字段名 行数 列数 和内容然后再ResultSetTableModel ob = new ResultSetTableModel(s); JTable bookTable = new JTable(ob); sp.setViewportView(bookTable);这样就行了对swing不熟。。你那种方法能给个例子详细参看下么 请描述详细些。flex没用过,但是我自信你要的效果我能玩出来 import java.awt.Color;import java.awt.Graphics;import java.awt.Rectangle;import java.awt.event.WindowAdapter;import java.awt.event.WindowEvent;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JPanel;import javax.swing.JTabbedPane;import javax.swing.UIManager;import javax.swing.event.ChangeEvent;import javax.swing.event.ChangeListener;import javax.swing.plaf.metal.MetalTabbedPaneUI;/** * @version 1.0 08/23/99 */public class ColorTabbedPaneExample extends JFrame { String[] titles = { "blue", "cyan", "green", "yellow", "orange", "pink", "red" }; Color[] colors = { Color.blue, Color.cyan, Color.green, Color.yellow, Color.orange, Color.pink, Color.red }; JTabbedPane tabbedPane; public ColorTabbedPaneExample() { super("ColorTabbedPaneExample (Metal)"); UIManager.put("TabbedPane.selected", colors[0]); tabbedPane = new JTabbedPane() { public void updateUI() { setUI(new ColoredTabbedPaneUI()); } }; for (int i = 0; i < titles.length; i++) { tabbedPane.addTab(titles[i], createPane(titles[i], colors[i])); tabbedPane.setBackgroundAt(i, colors[i].darker()); } tabbedPane.setSelectedIndex(0); tabbedPane.addChangeListener(new ChangeListener() { public void stateChanged(ChangeEvent e) { int i = tabbedPane.getSelectedIndex(); ((ColoredTabbedPaneUI) tabbedPane.getUI()) .setSelectedTabBackground(colors[i]); tabbedPane.revalidate(); tabbedPane.repaint(); } }); getContentPane().add(tabbedPane); } JPanel createPane(String title, Color color) { JPanel panel = new JPanel(); panel.setBackground(color); JLabel label = new JLabel(title); label.setOpaque(true); label.setBackground(Color.white); panel.add(label); return panel; } class ColoredTabbedPaneUI extends MetalTabbedPaneUI { public void setSelectedTabBackground(Color color) { selectColor = color; } protected void paintFocusIndicator(Graphics g, int tabPlacement, Rectangle[] rects, int tabIndex, Rectangle iconRect, Rectangle textRect, boolean isSelected) { } } public static void main(String[] args) { JFrame frame = new ColorTabbedPaneExample(); frame.addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent e) { System.exit(0); } }); frame.setSize(360, 100); frame.setVisible(true); }} 呃....swing 真没用它做过项目,swt的我这倒是有个 自己写的分页 了解啊 我也做过hibernate分页的这次是数据量不大 而且对GUI编程也不熟悉 想偷个懒 看有谁封装好的组件可以拿来使用 建议你去看看swing的一些框架,swingX,等等自己写的一般会跟自己的系统关联紧密, http://sulifeng.javaeye.com/admin/blogs/624076看看这个?事件响应没加上........自己写吧....... 如何注入已运行Java程序,并获取其中的信息 已经安装了jdk-6u18-windows-i586,还是提示不支持FOREACH语法 在文件中改写指定字节数组的问题,谢谢大家 怎么jsp的index.jsp内容无法改变呢?苦恼中... 给大家嫖来一段截屏的代码,希望大家喜欢,喜欢的要顶啊 哪里有免费的文件修复器?!救急!! 大家一起评论几本书!! 没有JBuilder5的教程吗? 怎么样调用repaint时,只让它不重画背景? java泛型与强制类型转换 Java中如何实现同一窗口的替换 难!!急!!!如何接着解析下xml(SAX方式)??
{
super.scrollRectToVisible(new Rectangle(0,row * getRowHeight(row),getWidth(),getRowHeight(row)));
}
其实我就是想偷懒 用别人封装好的swing组件 自己传一个list或者别的什么容器给这个组件 就能自动显示好。。
这个方法怎么用?
我一般用jtable显示数据是这样的先自己封装一个resulttablemodel继承AbstractTableModel 然后重写AbstractTableModel中四个方法
分别用来定义字段名 行数 列数 和内容然后再
ResultSetTableModel ob = new ResultSetTableModel(s);
JTable bookTable = new JTable(ob);
sp.setViewportView(bookTable);这样就行了对swing不熟。。你那种方法能给个例子详细参看下么
flex没用过,但是我自信你要的效果我能玩出来
import java.awt.Graphics;
import java.awt.Rectangle;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTabbedPane;
import javax.swing.UIManager;
import javax.swing.event.ChangeEvent;
import javax.swing.event.ChangeListener;
import javax.swing.plaf.metal.MetalTabbedPaneUI;/**
* @version 1.0 08/23/99
*/
public class ColorTabbedPaneExample extends JFrame { String[] titles = { "blue", "cyan", "green", "yellow", "orange", "pink",
"red" }; Color[] colors = { Color.blue, Color.cyan, Color.green, Color.yellow,
Color.orange, Color.pink, Color.red }; JTabbedPane tabbedPane; public ColorTabbedPaneExample() {
super("ColorTabbedPaneExample (Metal)"); UIManager.put("TabbedPane.selected", colors[0]);
tabbedPane = new JTabbedPane() {
public void updateUI() {
setUI(new ColoredTabbedPaneUI());
}
};
for (int i = 0; i < titles.length; i++) {
tabbedPane.addTab(titles[i], createPane(titles[i], colors[i]));
tabbedPane.setBackgroundAt(i, colors[i].darker());
}
tabbedPane.setSelectedIndex(0); tabbedPane.addChangeListener(new ChangeListener() {
public void stateChanged(ChangeEvent e) {
int i = tabbedPane.getSelectedIndex();
((ColoredTabbedPaneUI) tabbedPane.getUI())
.setSelectedTabBackground(colors[i]);
tabbedPane.revalidate();
tabbedPane.repaint();
}
});
getContentPane().add(tabbedPane);
} JPanel createPane(String title, Color color) {
JPanel panel = new JPanel();
panel.setBackground(color);
JLabel label = new JLabel(title);
label.setOpaque(true);
label.setBackground(Color.white);
panel.add(label);
return panel;
} class ColoredTabbedPaneUI extends MetalTabbedPaneUI {
public void setSelectedTabBackground(Color color) {
selectColor = color;
} protected void paintFocusIndicator(Graphics g, int tabPlacement,
Rectangle[] rects, int tabIndex, Rectangle iconRect,
Rectangle textRect, boolean isSelected) {
}
} public static void main(String[] args) {
JFrame frame = new ColorTabbedPaneExample();
frame.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
frame.setSize(360, 100);
frame.setVisible(true);
}
}
了解啊 我也做过hibernate分页的这次是数据量不大 而且对GUI编程也不熟悉 想偷个懒 看有谁封装好的组件可以拿来使用
自己写的一般会跟自己的系统关联紧密,