2024.05.08作业

news2024/12/28 3:44:29

登陆部分代码

/登陆槽函数
void Widget::btn_clicked()
{
    if(edit1->text()=="Admin" && edit2->text()=="123456")
    {
        //登陆成功对话框
        QMessageBox box(QMessageBox::Information,
                        "信息对话框",
                        "登陆成功",
                        QMessageBox::Ok,
                        this);
        box.exec();
//登陆跳转
        emit jump();
            this->close();
    }else
    {
        //登陆失败对话框
        int  btn=QMessageBox::critical(this,
                                       "错误对话框",
                                       "登陆失败,请检查账号或密码",
                                       QMessageBox::Ok|QMessageBox::No,
                                       QMessageBox::Ok);
        if(btn==QMessageBox::Ok)
        {edit2->clear();
        edit1->clear();}
        else
        {this->close();}
    }
}

跳转后界面代码

#include "second.h"
#include "ui_second.h"
second::second(QWidget *parent) :
    QWidget(parent),
    ui(new Ui::second)
{
    ui->setupUi(this);
    this->resize(540,415);
    this->setFixedSize(540,415);
    //窗口标题
    this->setWindowTitle("盗版QQ");
    //窗口图标
    this->setWindowIcon(QIcon(":/C:/Users/ShiSS/Desktop/pictrue/qq.png"));
    //背景颜色
    this->setStyleSheet("background-color:white");
    //创建文本框
    textEdit=new QTextEdit(this);
    textEdit->resize(540,300);
    //创建字体按钮
    btn1 = new QPushButton("字体",this);
    btn1->resize(60,50);
    btn1->move(60,350);
    connect(this->btn1,&QPushButton::clicked,this,&second::btn1_slots);
    //创建颜色按钮
    btn2 = new QPushButton("颜色",this);
    btn2->resize(60,50);
    btn2->move(180,350);
    connect(this->btn2,&QPushButton::clicked,this,&second::btn2_slots);
    //创建打开文件按钮
    btn3 = new QPushButton("打开文件",this);
    btn3->resize(60,50);
    btn3->move(300,350);
    connect(this->btn3,&QPushButton::clicked,this,&second::btn3_slots);
    //创建保存文件按钮
    btn4 = new QPushButton("保存文件",this);
    btn4->resize(60,50);
    btn4->move(420,350);
    connect(this->btn4,&QPushButton::clicked,this,&second::btn4_slots);
}
second::~second()
{
    delete ui;
}
//界面跳转
void second::jump_slots()
{
    this->show();
}
//字体按钮对应的槽函数
void second::btn1_slots()
{
    //1、调用字体对话框,用于选择字体
    bool ok=false;
    QFont f=QFontDialog::getFont(&ok,
                                 QFont("宋体",10,10,true),this,
                                 "选择字体");
    //2、使用选中的字体
    if(ok)
    {
        this->textEdit->setCurrentFont(f);//将选中文本设置相关字体
    }
}
//颜色按钮对应的槽函数
void second::btn2_slots()
{
    //调用函数选则颜色
    QColor c=QColorDialog::getColor(QColor("red"),this,"选择颜色");
    if(c.isValid()==true)
    {
        this->textEdit->setTextColor(c);//更改选中文本字体颜色
    }
}
//打开文件按钮对应的槽函数
void second::btn3_slots()
{
    //调用静态成员函数,调出文件对话框,让用户选择要打开的文件
    QString filename=QFileDialog::getOpenFileName(this,"选择文件","./",
                                                  "all(*.*)");

    //文件操作
    //1、通过文件路径实例化一个文件对象
    QFile file(filename);
    //2、打开文件
    if(file.open(QFile::ReadOnly)==false)
    {
        QMessageBox::information(this,"提示","文件打开失败");
        return;
    }
    //3、读取文件中的内容
    QByteArray msg=file.readAll();
    //4、将读取出来的数据,展示到文本编辑器中
    this->textEdit->setText(msg);
    //5、关闭文件
    file.close();
}
//保存文件按钮对应的槽函数
void second::btn4_slots()
{
    //调用静态成员函数,调出文件对话框,让用户选择要打开的文件
    QString filename=QFileDialog::getSaveFileName(this,
                                                  "保存文件",
                                                  "",
                                                  "all(*.*);;text(*.txt)");
    //1、通过文件路径实例化一个文件对象
    QFile file(filename);
    if (file.open(QIODevice::WriteOnly | QIODevice::Text)) {
        //读取文本编辑器上的内容,转换为UTF8模式
        QString str=textEdit->toPlainText();
        QByteArray msg=str.toUtf8();
        //读取的内容写入文件
        file.write(msg);
        file.close();
    }
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1655245.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SSH隧道可以做什么?

SSH隧道是SSH协议服务端提供的一种扩展功能,一般仅在linux服务器的SSH服务端中提供,其它的如交换机、防火墙等网络设备中,虽然支持SSH协议,但多数并不提供SSH隧道功能。 所以,在通过SSH协议连接远程设备时&#xff0c…

我独自升级崛起加速器推荐 我独自升级免费加速器

近期,《我独自升级》这部动画凭借爆棚的人气,在各大平台上掀起了一阵观看热潮,其影响力不容小觑。借此时机,韩国游戏巨头网石集团敏捷响应,顺势推出了同名游戏《我独自升级:ARISE》,为粉丝们搭建…

Vue3 路由入门

先安装路由 npm i vue-router //创建路由器 import { createRouter, createWebHashHistory } from vue-router//1.导入组件 import Home from /components/Home.vue import News from /components/News.vue//2.配置路由映射规则 const routes [{name: home,path: /home,compo…

【STM32】F405/407的模块总览图,记录查看

从STM32F405/407数据手册中提取,方便以后查看。主要是什么外设连接在什么总线上,时钟频率是多少。 TIM2、3、4、5、12、13、14在APB1上,最大频率84M TIM1、8、9、10、11在APB2上,最大频率168M

吴恩达机器学习笔记:第 9 周-16推荐系统(Recommender Systems) 16.5-16.6

目录 第 9 周 16、 推荐系统(Recommender Systems)16.5 向量化:低秩矩阵分解16.6 推行工作上的细节:均值归一化 第 9 周 16、 推荐系统(Recommender Systems) 16.5 向量化:低秩矩阵分解 在上几节视频中,我们谈到了协同过滤算法&…

网络层协议之 IP 协议

IP 协议格式 4 位版本:此处的取值只有两个,4(IPv4)和 6(IPv6),即指定 IP 协议的版本。 4 位首部长度:描述了 IP 报头多长,IP 报头是变长的,因为报头中的选项部…

windows驱动开发-inf文件(一)

驱动总是和inf文件相关,在WinDDK的时候,许多inf文件都需要开发工程师手动编写,不过,现在已经可以使用inx文件来生成inf文件了,它经常用于驱动的安装和卸载;不过,并不是所有的驱动都需要使用inf文…

【 npm详解:从入门到精通】

文章目录 npm详解:从入门到精通1. [npm](https://www.npmjs.com/)的安装2. npm的基础用法2.1 初始化项目2.2 安装依赖2.3 卸载依赖2.4 更新依赖 3. npm的高级用法3.1 运行脚本3.2 使用npm scope3.3 使用npm link 4. npm资源5. 使用npm进行依赖树分析和可视化6. npm进…

数据分析从入门到精通 1.numpy剑客修炼

会在某一瞬间突然明白,有些牢笼是自己给自己的 —— 24.5.5 一、数据分析秘笈介绍 1.什么是数据分析 是把隐藏在一些看似杂乱无章的数据背后的信息提炼出来,总结出所研究对象的内在规律。使得数据的价值最大化 案例: 分析用户的消…

Redis 主从复制 初步认识

文章目录 定义拓扑拓扑定义单从拓扑多从拓扑树型拓扑 使用原理建立流程持续复制 定义 Redis主从复制技术的主要满足的需求是①数据恢复②负载均衡 ①数据恢复的理解:将数据同步到多个Redis服务器中,其中一个节点数据损毁,可通过复制其他节点…

Python | Leetcode Python题解之第77题组合

题目: 题解: class Solution:def combine(self, n: int, k: int) -> List[List[int]]:ans []path []def dfs(x):remain k - len(path)if not remain:ans.append(list(path))returnif n 1 - x > remain:dfs(x 1)path.append(x)dfs(x 1)path.…

【进程间通信】共享内存

文章目录 共享内存常用的接口指令利用命名管道实现同步机制总结 System V的IPC资源的生命周期都是随内核的。 共享内存 共享内存也是为了进程间进行通信的,因为进程间具有独立性,通信的本质是两个不同的进程看到同一份公共资源,所以共享内存…

MVC 过滤器

MVC 过滤器常用有4种 Action过滤器(IActionFilter) 》 行为过滤器Result过滤器 (IResultFilter)》 视图过滤器 或 结果过滤器Exception过滤器(IExceptionFilter)》 异常过滤器Authorization过滤器&#xf…

OpenCV|简单绘制一个矩形

OpenCV中的rectangle() 为绘制矩形命令,形式如下: # (img: cv2.typing.MatLike, pt1: cv2.typing.Point, pt2: cv2.typing.Point, color: cv2.typing.Scalar, thickness: int ..., lineType: int ..., shift: int ...)cv2.rectangle(img, pt1, pt2, …

运用分支结构与循环结构写一个猜拳小游戏

下面我们运用平常所学的知识来写一个小游戏,这样能够加强我们学习的趣味性,并且能够更加的巩固我们所学的知识。 游戏代码: 直接放代码:(手势可以使用数字来代替,比如0对应石头,1对应剪刀&…

APB总线协议

一、概述 高级外围设备总线(APB)是高级微控制器总线架构(AMBA)总线层次结构的一部分,并为最小的功耗和降低接口复杂性进行了优化。AMBA APB应用于连接到任何低带宽且不需要流水线总线接口的高性能的外设。 二、APB总…

【氮化镓】GaN功率器件在转换器设计中的挑战

I. 引言(INTRODUCTION) 宽带隙(WBG)器件的重要性: 引言部分首先强调了宽带隙(WBG)器件在高频、高效率电力电子技术中的关键作用。这些器件,包括碳化硅(SiC)和氮化镓(GaN),相较于传统的硅功率器件,具有显著的优势。宽带隙半导体材料的高击穿场强允许设计更薄的漂…

linux Shell编程之条件语句

条件测试操作 test命令 条件测试操作 Shell环境根据命令执行后的返回状态值($?)来判断是否执行成功,当返回值为0(真true)时表示成功,返回值为非0值(假false)时表示失败或异常。 t…

nginx--系统参数优化telenct

系统参数 在生产环境中,根据自己的需求在/etc/sysctl.conf来更改内核参数 net.ipv4.ip_nonlocal_bind 1 允许非本地IP地址socket监听 net.ipv4.ip_forward 1 开启IPv4转发 net.ipv4.tcp_timestamps 0 是否开启数据包时间戳 net.ipv4.tcp_tw_reuse 0 端⼝口复⽤…

安防视频/视频汇聚系统EasyCVR视频融合云平台助力智能化酒店安防体系的搭建

一、背景需求 2024年“五一”假期,全国文化和旅游市场总体平稳有序。文化和旅游部6日发布数据显示,据文化和旅游部数据中心测算,全国国内旅游出游合计2.95亿人次。“五一”假期县域市场酒店预订订单同比增长68%,而酒店作为一个高…