Java Swing 图形界面开发
// 1. 创建一个顶层容器(窗口)
// 创建窗口
JFrame jf = new JFrame("测试窗口");
// 设置窗口大小
jf.setSize(250, 250);
// 把窗口位置设置到屏幕中心
jf.setLocationRelativeTo(null);
// 当点击窗口的关闭按钮时退出程序(没有这一句,程序不会退出)
jf.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
// 2. 创建中间容器(面板容器)
// 创建面板容器,使用默认的布局管理器
JPanel panel = new JPanel();
/*
* 创建一个菜单栏
*/
JMenuBar menuBar = new JMenuBar();
/*
* 创建一级菜单
*/
JMenu fileMenu = new JMenu("文件");
JMenu editMenu = new JMenu("编辑");
JMenu viewMenu = new JMenu("视图");
JMenu aboutMenu = new JMenu("关于");
// 一级菜单添加到菜单栏
menuBar.add(fileMenu);
menuBar.add(editMenu);
menuBar.add(viewMenu);
menuBar.add(aboutMenu);
/*
* 创建 "文件" 一级菜单的子菜单
*/
JMenuItem newMenuItem = new JMenuItem("新建");
JMenuItem openMenuItem = new JMenuItem("打开");
JMenuItem exitMenuItem = new JMenuItem("退出");
// 子菜单添加到一级菜单
fileMenu.add(newMenuItem);
fileMenu.add(openMenuItem);
fileMenu.addSeparator(); // 添加一条分割线
fileMenu.add(exitMenuItem);
要先创建菜单栏,在创建一级菜单,把一级菜单添加到菜单栏。再创建一级菜单的子菜单,把子菜单添加到一级菜单。
// 创建一个基本组件(按钮),并添加到 面板容器 中
JButton btn = new JButton("测试按钮");
panel.add(btn);
//创建一个只显示文本的标签
JLabel label01 = new JLabel();
label01.setText("Only Text");
// 设置字体
label01.setFont(new Font(“宋体”, Font.PLAIN, 25));
panel.add(label01);
// 创建文本框,指定可见列数为8列
final JTextField textField = new JTextField(8);
textField.setFont(new Font(null, Font.PLAIN, 20));
panel.add(textField);
jf.setContentPane(panel);
// 前面创建的信息都在内存中,通过 jf.setVisible(true) 把内存中的窗口显示在屏幕上。
jf.setVisible(true);
//利用按钮触发获取文本框信息
btn.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
System.out.println("提交: " + textField1.getText());
}
});
怎么点击菜单栏进行转换?
在子菜单设置触发命令,点击后----销毁当前的页面 :jf.dispose();
打开一个新的页面:new FirstPage().firtPage();
fhMenuItem.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
jf.dispose();
new eas_home().Page();
}
});
利用绝对分布:置组件的坐标和宽高来布置组件
//null是绝对布局,通过设置组件在Container中的坐标位置来放置组件
JPanel panel = new JPanel(null);
// 设置组件的界限(一次性设置组件的 坐标 和 宽高)
void setBounds(int x, int y, int width, int height)
详细请参考此博客
import java.sql.*;
public class lj {
public static void main(String[] args) {
try {
// 加载数据库驱动
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
// 数据库连接字符串
// jdbc:sqlserver 连接协议
// localhost 连接地址
// 1433 连接端口
// sql 连接的数据库
String url = "jdbc:sqlserver://localhost:1433;databaseName=sql";
// 打开数据库连接
// sa 用户名
// 1 刚刚设置的密码
Connection connection = DriverManager.getConnection(url, "sa", "#hb980498");
// 关闭数据库连接
connection.close();
System.out.println("数据库连接成功");
} catch (Exception e) {
System.out.println("数据库连接失败");
e.printStackTrace();
}
}
}
//删除操作
String sql="insert into Course(cno,cname,credit,tno) values('"+cnoo+"','"+cnamee+"',"+creditt+",'"+tnoo+"')";
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");//DriverManager负责加载各种不同的驱动程序
String url = "jdbc:sqlserver://localhost:1433;databaseName=sql";
Connection conn = DriverManager.getConnection(url, "sa", "#hb980498");//Connection数据库连接,负责与数据库间通讯
Statement pstmt = conn.createStatement();//Statement用以执行不含参数的静态SQL查询和更新,并返回执行结果
pstmt.executeUpdate(sql);
//增改查操作
String sql="select sname from Student where Student.sno='"+snoo+"'";
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");//DriverManager负责加载各种不同的驱动程序
String url = "jdbc:sqlserver://localhost:1433;databaseName=sql";
Connection conn = DriverManager.getConnection(url, "sa", "#hb980498");//Connection数据库连接,负责与数据库间通讯
Statement pstmt = conn.createStatement();//Statement用以执行不含参数的静态SQL查询和更新,并返回执行结果
ResultSet rs=pstmt.executeQuery(sql);//ResultSet获得SQL查询结果
rs.next();
return rs.getString("sname");
先用Class.forName加载数据库驱动,再用Connection建立与数据库的连接。再定义一个Statement用以执行不含参数的静态SQL查询和更新,并返回执行结果。