QT 系统学习 day02 了解各种控件,登录界面的设计,数据库sqlite3 的使用,label 播放 视屏

1.label 标签播放 电影

需要头文件 #include<QMovie>

代码;

QMovie *movie = new QMovie(":/GIF动画/堆糖抱羊.gif");
    movie->start();
    ui->label->setMovie(movie);


2.控件   radioButton  的检测

QString Register::getSex()//返回性别信息
{
    qDebug()<<"进入返回性别";
    if(ui->radioButton->isCheckable()==true)//选中的是男性
    {
        QString b("男");
         qDebug()<<"获取的sex : "<<b;
        return b;
    }
    else if(ui->radioButton_2->isCheckable()==true)//选中的是女性
    {
        QString b("女");
        qDebug()<<"获取的sex : "<<b;
        return b;
    }
}


3.关于   lineEdit  的函数

密码显示的时候为 黑点

void Sign_in::lineEdit_pass_open()//开启密码保护
{
    ui->lineEdit_pass->setEchoMode(QLineEdit::Password);//开启密码保护
}
void Sign_in::lineEdit_pass_close()//关闭密码保护
{
    ui->lineEdit_pass->setEchoMode(QLineEdit::Normal);//关闭密码保护
}


4.控件   spinBox

获取当前值的函数

int Register::getAge()//返回年龄
{
    qDebug()<<"进入返回年龄";
    int a=ui->spinBox->value();//获取显示的年龄
    qDebug()<<"获取的年龄: "<<a;
    return a;
}

5.QT 关于  sqlite3 的函数

代码:


void Sql::Init(QSqlDatabase &db)//初始化函数, 主要是 实例化对象 建立数据库, 第二个,
{
    db = QSqlDatabase::addDatabase("QSQLITE");		//设置数据库驱动
    /*----- 设置主机信息 -----*/
    db.setDatabaseName("user.db"); 			//设置数据库名称
    /*----- 读数据库操作 -----*/
    bool ok = db.open();
    if(ok==false)
    {
        qDebug()<< "打开数据库失败";
    }
    else
    {
        qDebug()<<"打开数据库成功";
    }

    //创建一个表 来存储信息
    QSqlQuery sql(db);
    QString str_sql = "create table user(user text primary  key,pass text not null,sex text,age interger);";//唯一的账号, 密码不为空, QSting 类型的 sex   int  类型的 age
    if(sql.exec(str_sql) == false)
    {
        qDebug() << "执行SQL失败  建表失败:" << sql.lastError() << endl;
    }
    else
    {
        qDebug() << "执行成功SQL语句  建表成功" << endl;
    }


}
bool Sql::addSql(People a,QSqlDatabase &db)//插入数据
{
        QSqlQuery sql(db);
        QString str_sql_insert = QString("insert into user values('%1','%2','%3','%4');").arg(a.m_user,a.m_passWord,a.m_sex,a.m_age);//生成语句
        if(sql.exec(str_sql_insert) == false)
        {
            qDebug() << "执行SQL失败  插入数据失败:" << sql.lastError() << endl;
            return false;
        }
        else
        {
            qDebug() << "执行成功SQL语句  插入数据成功" << endl;
            return true;
        }
}
bool Sql::deleteSql(People a,QSqlDatabase &db)//删除数据
{

}

bool Sql::checkSql(People a,QSqlDatabase &db)//检测是否含有这个数据正确
{
       QSqlQuery sql(db);
       QString str_sql_select = QString("select * from user where user = '%1';").arg(a.m_user);//根据账号查询
       if(sql.exec(str_sql_select) == true)
       {
           while(sql.next() == true)
           {
               QString a1= sql.value("user").toString();
               QString b1= sql.value("pass").toString();

               if(a1==a.m_user && b1==a.m_passWord)
               {
                   return true;
               }
               else
               {
                   return false;
               }

           }
       }
       return false;
}

People Sql::querySql(QString value,QSqlDatabase &db)//根据账号  返回查询的数据
{
    QSqlQuery sql(db);
    QString str_sql_select = QString("select * from user where user = '%1';").arg(value);//根据账号查询
    if(sql.exec(str_sql_select) == true)
    {
        while(sql.next() == true)
        {
            QString a= sql.value("user").toString();
            QString b= sql.value("pass").toString();
            QString c= sql.value("sex").toString();
            QString d = sql.value("age").toString();
            qDebug() << "打印查询的数据 :";
            qDebug() << "user"<<sql.value("user").toString() << "\t";
            qDebug() << "pass"<<sql.value("pass").toString() << "\t";
            qDebug() << "sex"<<sql.value("sex").toString() << "\t";
            qDebug() << "age"<<sql.value("age").toString() << endl;

            People pp(a,b,c,d);
            return pp;
        }
    }
}

void Sql::printSql(QSqlDatabase &db)//打印所有的数据
{


}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值