mysql与jframe_swing中JFrame的各个面板关系&截图工具开发

官网解析:https://docs.oracle.com/javase/tutorial/uiswing/components/rootpane.html

一 JFrame层次

7ba732cecd74efb933637c9f60f86840.png

9c3a9bbdca4eea30a78a711682110c02.png

官方图片

二 源码浅析

JFrame

JFrame类中保存了一个JRootPane的变量,该变量值来自一个createRootPane()方法。创建JFrame时会调用createRootPane();赋值。

ced13907601da1392bad56dbcec03674.png

JFrame调用几个面板的细节如下:

a98fbf43c1c6ce59bc64e57e0a613d32.png

root pane

只有一个类叫做JRootPane  所以本文的rootpane、RootPane 都是指JRootPane

85e836692c8df6808e901598cf01cdba.png

b87ad6e6565a5ac403ee71cc3fed0827.png

黄色部分圈出来的三个方法如下:(还是在JRootPanel.class中)

c3fed28ba2105c24d6c30bf3d0242668.png

e1ec40d0dff2dd3e7e87961529b72c29.png

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
为了在Java Swing的JTable显示MySQL数据库的记录,你需要执行以下步骤: 1. 连接到MySQL数据库:使用JDBC API连接到MySQL数据库。你需要提供MySQL数据库的URL、用户名和密码。 2. 准备SQL查询:使用SQL查询语句从MySQL数据库检索数据。 3. 执行SQL查询:执行SQL查询并将结果存储在ResultSet对象。 4. 创建TableModel:TableModel是JTable显示数据的核心。你需要从ResultSet对象检索列名和数据,并创建一个DefaultTableModel对象。 5. 创建JTable:使用DefaultTableModel对象创建JTable对象。 6. 添加JTable到JFrame:将JTable对象添加到JFrame。 下面是一个示例代码,它演示了如何在Java Swing的JTable显示MySQL数据库的记录: ```java import java.sql.*; import javax.swing.*; import javax.swing.table.*; public class MySQLJTableExample extends JFrame { private JTable table; public MySQLJTableExample() { setTitle("MySQL JTable Example"); setSize(500, 500); setDefaultCloseOperation(EXIT_ON_CLOSE); // 连接到MySQL数据库 String url = "jdbc:mysql://localhost:3306/mydatabase"; String username = "root"; String password = "mypassword"; String query = "SELECT * FROM mytable"; try (Connection connection = DriverManager.getConnection(url, username, password); Statement statement = connection.createStatement(); ResultSet resultSet = statement.executeQuery(query)) { // 创建TableModel DefaultTableModel tableModel = new DefaultTableModel(); ResultSetMetaData metaData = resultSet.getMetaData(); int columnCount = metaData.getColumnCount(); for (int i = 1; i <= columnCount; i++) { tableModel.addColumn(metaData.getColumnName(i)); } while (resultSet.next()) { Object[] row = new Object[columnCount]; for (int i = 1; i <= columnCount; i++) { row[i - 1] = resultSet.getObject(i); } tableModel.addRow(row); } // 创建JTable table = new JTable(tableModel); // 添加JTable到JFrame add(new JScrollPane(table)); } catch (SQLException e) { e.printStackTrace(); } } public static void main(String[] args) { new MySQLJTableExample().setVisible(true); } } ``` 这个示例代码连接到名为"mydatabase"的MySQL数据库,用户名为"root",密码为"mypassword"。它从"mytable"表检索所有记录,并在JTable显示它们。你可以根据自己的需要修改代码。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值