java swing 分页显示数据_Java swing实现分页显示代码

Java swing实现分页显示

效果如下:

5d0a3985d07833faba20f8037cf1f15e.png

代码:

package com.zp.test1;

import java.util.ArrayList;

import java.util.List;

public class FenYeTest {

static Listlist=new ArrayList();

static{

User user=new User("0","0");

User user1=new User("1","1");

User user2=new User("2","2");

User user3=new User("3","3");

User user4=new User("4","4");

User user5=new User("5","5");

User user6=new User("6","6");

User user7=new User("7","7");

User user8=new User("8","8");

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,以下是Java Swing分页查询代码示例: ```java import javax.swing.*; import java.awt.*; import java.awt.event.*; import java.util.ArrayList; public class PaginationQuery extends JFrame implements ActionListener { private JTextField pageTextField; private JButton goButton, prevButton, nextButton; private JPanel contentPanel; private JLabel resultLabel; private ArrayList<String> results; // 存储查询结果 private int pageSize = 10; // 每页数量 private int currentPage = 1; // 当前页码 public PaginationQuery() { super("分页查询"); // 创建组件 pageTextField = new JTextField(10); goButton = new JButton("Go"); prevButton = new JButton("Prev"); nextButton = new JButton("Next"); resultLabel = new JLabel(); // 添加监听器 goButton.addActionListener(this); prevButton.addActionListener(this); nextButton.addActionListener(this); // 设置布局 contentPanel = new JPanel(new BorderLayout()); JPanel topPanel = new JPanel(new FlowLayout()); topPanel.add(new JLabel("跳转到第")); topPanel.add(pageTextField); topPanel.add(new JLabel("页")); topPanel.add(goButton); topPanel.add(prevButton); topPanel.add(nextButton); contentPanel.add(topPanel, BorderLayout.NORTH); contentPanel.add(resultLabel, BorderLayout.CENTER); setContentPane(contentPanel); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); pack(); setLocationRelativeTo(null); setVisible(true); } @Override public void actionPerformed(ActionEvent e) { int totalPage = (int) Math.ceil((double) results.size() / pageSize); // 总页数 Object source = e.getSource(); if (source == goButton) { // 跳转到指定页码 try { int targetPage = Integer.parseInt(pageTextField.getText()); if (targetPage < 1 || targetPage > totalPage) { JOptionPane.showMessageDialog(this, "页码超出范围", "错误", JOptionPane.ERROR_MESSAGE); } else { currentPage = targetPage; updateResultLabel(); } } catch (NumberFormatException ex) { JOptionPane.showMessageDialog(this, "页码格式错误", "错误", JOptionPane.ERROR_MESSAGE); } } else if (source == prevButton) { // 上一页 if (currentPage > 1) { currentPage--; updateResultLabel(); } } else if (source == nextButton) { // 下一页 if (currentPage < totalPage) { currentPage++; updateResultLabel(); } } } private void updateResultLabel() { int startIndex = (currentPage - 1) * pageSize; int endIndex = Math.min(startIndex + pageSize, results.size()); StringBuilder sb = new StringBuilder(); sb.append("<html>"); // 使 Label 能够显示多行文本 for (int i = startIndex; i < endIndex; i++) { sb.append(results.get(i)).append("<br>"); } sb.append("</html>"); resultLabel.setText(sb.toString()); contentPanel.revalidate(); // 更新界面 } public void query(String condition) { // 模拟查询操作 results = new ArrayList<>(); for (int i = 1; i <= 100; i++) { results.add(condition + " " + i); } updateResultLabel(); } public static void main(String[] args) { PaginationQuery pq = new PaginationQuery(); pq.query("Test"); // 查询条件为 "Test" } } ``` 这是一个简单的带分页功能的 Java Swing 程序示例,使用了 JLabel、JTextField、JButton 和 JPanel 等 Swing 组件,并实现了 ActionListener 接口。当用户输入页码点击“Go”按钮时,程序会跳转到对应页码并显示结果,点击“Prev”和“Next”按钮会分别向上翻页和向下翻页。在 `query` 方法中,执行查询操作并把结果存储在 `results` 列表中,通过调用 `updateResultLabel` 方法来更新显示结果的 JLabel。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值