基于QML的学生信息管理系统(数据库MYSQL)

8 篇文章 0 订阅
2 篇文章 0 订阅

目录

效果展示

登录界面:

 主界面:

 主界面:

修改用户,新建用户界面:

关键代码:

登录界面QMl代码:

// 输入框代码段
 ColumnLayout {
        x: 170
        y: 192
        width: 300
        height: 125
        
        Rectangle{
            id:rect_Id
            Layout.preferredHeight: 50
            Layout.preferredWidth: 300
            
            Image {
                id: imageId
                x: 10
                y: 9
                width: 30
                height: 30
                source: "qrc:/res/id.png"
                fillMode: Image.PreserveAspectFit
            }
            
            TextField {
                id: textField_Id
                x: 50
                y: 5
                width: 241
                height: 40
                text: qsTr("")
                verticalAlignment: Text.AlignVCenter
                font.pixelSize: 12
                font.family: "微软雅黑"
                color: "black" //"#B2B2B2"
                cursorVisible: true;
                selectByMouse: true //是否可以选择文本
                selectionColor: "#999999"//选中背景颜色
                placeholderText: qsTr("请输入账号")
                focus: true;
                background: Rectangle {
                    border.width: 0; //border.color: "#B2B2B2"
                    radius: 5;
                    color: "#000000" //"transparent"
                    opacity: 0.05
                    implicitHeight: 40;
                    implicitWidth: 280
                }
            }
        }
        
        Rectangle{
            id:rect_Pwd
            Layout.preferredHeight: 50
            Layout.preferredWidth: 300
            
            Image {
                id: imagePwd
                x: 10
                y: 9
                width: 30
                height: 30
                source: "qrc:/res/pwd.png"
                fillMode: Image.PreserveAspectFit
            }
            TextField {
                id: textField_Pwd
                x: 50
                y: 5
                width: 240
                height: 40
                text: qsTr("")
                verticalAlignment: Text.AlignVCenter
                font.pixelSize: 12
                font.family: "微软雅黑"
                color: "black" //"#B2B2B2"
                cursorVisible: true;
                selectByMouse: true //是否可以选择文本
                selectionColor: "#999999"//选中背景颜色
                placeholderText: qsTr("请输入密码")
                background: Rectangle {
                    border.width: 0; //border.color: "#B2B2B2"
                    radius: 5;
                    color: "#000000" //"transparent"
                    opacity: 0.05
                    implicitHeight: 40;
                    implicitWidth: 280
                }
            }
        }
    }
    

CPP中获取表中所有学生信息数据代码:

//CPP中获取表中所有学生信息数据代码段
 QSqlQuery query;
    QList< QMap<QString, QVariant> > tempList;
    QList<QString> fieldList;       //存放所有字段的List
    QString str="select * from student_db.StudentInfo";
    if(query.exec(str))
    {
        QSqlRecord record = query.record();
        int cloumnCount = record.count();      //返回字段列数
        for(int i=0; i<cloumnCount; ++i)
        {
            fieldList.append(record.fieldName(i));
            //qDebug()<<fieldList.at(i);
        }
        while(query.next())
        {
            QMap<QString, QVariant> tempMap;
            for(int i=0; i<cloumnCount; i++)
            {
                tempMap.insert(fieldList.at(i), query.value(fieldList.at(i)));
            }
            tempList.append(tempMap);
        }
        qDebug()<<"执行成功!!!";
    }

设计思路:

Qt5.9开发,以QML和C++混合编程来开发的;Qml作为界面处理,数据的逻辑处理在cpp端完成;

具体有登录界面 、主界面;功能包括删除全部学生,删除单个学生,添加学生,修改学生,查询学生(支持模糊查询),全部源码私信即可。


  • 5
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 5
    评论
基于QMLQt Meta-Object Language)的监控系统开发具有许多优势。QML是一种声明式的语言,用于创建可交互的用户界面,并且与C++结合使用,使得开发高度可定制的监控系统变得更加简单和高效。 首先,QML提供了一种直观且易于理解的方式来设计用户界面。通过使用QML,开发人员可以轻松创建动态和交互式的监控系统,以满足用户的需求。使用QML的强大功能,可以通过简单的代码编写来处理用户交互和数据显示。 其次,QML具有良好的可扩展性。QML是基于Qt框架的,这使得可以在不同的平台上运行开发的监控系统。无论是在Windows、Mac还是Linux系统上,基于QML的监控系统都能够正常运行,这大大增加了其适用范围。 此外,基于QML的监控系统可以与C++代码进行无缝集成。开发人员可以使用C++编写高性能的后台逻辑,然后通过使用QML将其连接到用户界面。这样一来,开发人员可以充分利用C++的强大功能,同时使用QML的灵活性和直观性。 最后,基于QML的监控系统可以轻松应对不同设备的屏幕尺寸和分辨率。QML允许开发人员在界面设计中使用自适应布局和可缩放的图形元素,以确保监控系统在不同设备上的显示效果良好。 综上所述,基于QML的监控系统开发是一种强大而灵活的选择。它提供了直观的用户界面设计,良好的可扩展性,与C++的无缝集成以及对不同设备的适应性,这些都使得开发高质量的监控系统变得更加容易。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

来份煎蛋吧

你的鼓励是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值