javafx实现通讯录(数据库升级版)

这个JavaFX应用程序展示了如何创建一个包含输入字段和表格视图的用户界面,用于添加、查询、更改和删除数据。用户可以输入姓名、手机号、办公电话和邮箱,程序会进行有效性检查。数据存储在MySQL数据库中,并使用`TableView`展示。当用户执行操作时,程序会更新表格并刷新数据。此外,还实现了对电话号码和邮箱格式的校验。
摘要由CSDN通过智能技术生成

在这里插入图片描述

Table01

package sample;

import javafx.application.Application;
import javafx.beans.Observable;
import javafx.collections.FXCollections;
import javafx.collections.ObservableList;
import javafx.geometry.Insets;
import javafx.geometry.Pos;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.control.*;
import javafx.scene.control.cell.PropertyValueFactory;
import javafx.scene.layout.FlowPane;
import javafx.scene.layout.HBox;
import javafx.scene.layout.VBox;
import javafx.scene.text.Font;
import javafx.stage.Stage;

import javax.tools.Tool;
import java.sql.*;

public class Table01 extends Application {
   

    //上半部分
    VBox vAll = new VBox();
    VBox vb = new VBox();
    HBox h1 = new HBox();
    HBox h2 = new HBox();
    HBox h3 = new HBox();
    TextField tfName = new TextField();
    TextField tfTel1 = new TextField();
    TextField tfTel2 = new TextField();
    TextField tfEmail = new TextField();
    Button btAdd = new Button("新增");
    Button btQuery = new Button("查询");
    Button btChange = new Button("更改");
    Button btDel = new Button("删除");

    TableView table = new TableView();
    //下半部分
    TableColumn idCol = new TableColumn("序号");
    TableColumn nameCol = new TableColumn("姓名");
    TableColumn tel1Col = new TableColumn("手机");
    TableColumn tel2Col = new TableColumn("办公电话");
    TableColumn emailCol = new TableColumn("邮箱");

    //文本框中的信息
    String sName = tfName.getText();
    String sTel1 = tfTel1.getText();
    String sTel2 = tfTel2.getText();
    String sEmail = tfEmail.getText();

    //数据
    final ObservableList<Person> data = FXCollections.observableArrayList();
    @Override
    public void start(Stage stage) {
   

        stage.setTitle("Table View Sample");
        stage.setWidth(450);
        stage.setHeight(600);

        //上半部分
        h1.getChildren().addAll(new Label("姓名:"),tfName,new Label("手机:"),tfTel1);
        h2.getChildren().addAll(new Label("办公电话:"),tfTel2,new Label("邮箱:"),tfEmail);
        h3.getChildren().addAll(btAdd,btChange,btQuery,btDel);
        h3.setSpacing(40);
        h3.setAlignment(Pos.TOP_CENTER);
        vb.getChildren().addAll(h1,h2,h3);
        vb.setSpacing(10);

        table.setEditable(true);

        //设置自动拉满    table.setColumnResizePolicy(TableView.CONSTRAINED_RESIZE_POLICY);

        //下半部分
        table.getColumns().addAll(idCol,nameCol,tel1Col,tel2Col,emailCol);

        //列与person类绑定
        idCol.setCellValueFactory(new PropertyValueFactory<Person,String>("id"));
        nameCol.setCellValueFactory(new PropertyValueFactory<Person,String>("name"));
        tel1Col.setCellValueFactory(new PropertyValueFactory<Person,String>("tel1"));
        tel2Col.setCellValueFactory(new PropertyValueFactory<
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值