本次在idea中使用swing的问题以及GUI form的问题

本文介绍了博主在Idea中使用Swing进行基础编程的心得,特别强调了Idea内置GUI form的便利性。通过创建Java工程,不需额外设置,即可建立GUI form。控件的属性和布局在xml中定义,代码中无需手动new控件,简化了初始化过程。
摘要由CSDN通过智能技术生成

这个是一位博主总结的swing基础编程讲解,我感觉非常适合入门

swing基础编程讲解
https://blog.csdn.net/cb_east/article/details/79949415

下面来介绍一些idea自带的GUI form

看看怎么建立GUI form工程
先是创建新工程
在这里插入图片描述
选择Java后别的不用选了,直接下一步把项目名称建好就行了。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
当控件都拖动好的时候,你会发现你的代码里面并没有对于控件属性的设置,这个时候其实是通过xml实现了界面的编程。
在上买那个设计界面上右键点击 form source就能看到xml代码。
在这里插入图片描述
同时在你的窗口代码中能看见控件成员。
在这里插入图片描述

这里提示一点,就是控件初始化是由xml做的,所以你的类在初始化的时候不需要单独把控件拿出来new。

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在Swing GUI查询数据库并显示结果,需要进行以下步骤: 1. 建立数据库连接,可以使用Java提供的JDBC API来实现。 2. 创建一个Swing GUI界面,包括需要查询的文本框、按钮和显示结果的表格等组件。 3. 当用户点击查询按钮时,获取文本框的查询条件,并使用JDBC API执行查询操作。 4. 将查询结果封装成一个数据模型,例如Java提供的TableModel。 5. 将数据模型设置到表格,用于显示查询结果。 下面是一个简单的示例代码,可以根据实际情况进行修改和扩展: ```java import java.awt.BorderLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.Statement; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JPanel; import javax.swing.JScrollPane; import javax.swing.JTable; import javax.swing.JTextField; import javax.swing.table.DefaultTableModel; public class DatabaseQueryGUI extends JFrame implements ActionListener { private static final long serialVersionUID = 1L; private JTextField queryText; private JButton queryButton; private JTable resultTable; public DatabaseQueryGUI() { super("Database Query GUI"); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // 创建查询条件输入框和查询按钮 JPanel queryPanel = new JPanel(); queryText = new JTextField(20); queryPanel.add(queryText); queryButton = new JButton("Query"); queryButton.addActionListener(this); queryPanel.add(queryButton); getContentPane().add(queryPanel, BorderLayout.NORTH); // 创建显示结果的表格 resultTable = new JTable(); getContentPane().add(new JScrollPane(resultTable), BorderLayout.CENTER); // 显示窗口 pack(); setLocationRelativeTo(null); setVisible(true); } @Override public void actionPerformed(ActionEvent e) { if (e.getSource() == queryButton) { // 获取查询条件 String query = queryText.getText(); try { // 建立数据库连接 Class.forName("com.mysql.jdbc.Driver"); Connection connection = DriverManager.getConnection( "jdbc:mysql://localhost:3306/test", "root", "password"); // 执行查询 Statement statement = connection.createStatement(); ResultSet resultSet = statement.executeQuery(query); // 封装查询结果 DefaultTableModel model = new DefaultTableModel(); int columnCount = resultSet.getMetaData().getColumnCount(); for (int i = 1; i <= columnCount; i++) { model.addColumn(resultSet.getMetaData().getColumnName(i)); } while (resultSet.next()) { Object[] row = new Object[columnCount]; for (int i = 1; i <= columnCount; i++) { row[i-1] = resultSet.getObject(i); } model.addRow(row); } // 显示查询结果 resultTable.setModel(model); // 关闭数据库连接 resultSet.close(); statement.close(); connection.close(); } catch (Exception ex) { ex.printStackTrace(); } } } public static void main(String[] args) { new DatabaseQueryGUI(); } } ``` 上述代码使用了MySQL数据库,如果需要使用其他数据库,需要修改JDBC驱动和连接串的信息。同时,为了保证安全性,应该将查询条件进行参数化处理,而不是直接拼接SQL语句。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值