当前位置:首页 >> 半导体技术突破 >> 【QT 网络云盘客户端】——实现文件属性窗口,暴风影音皮肤下载

【QT 网络云盘客户端】——实现文件属性窗口,暴风影音皮肤下载

cpugpu芯片开发光刻机 半导体技术突破 1
文件名:【QT 网络云盘客户端】——实现文件属性窗口,暴风影音皮肤下载 【QT 网络云盘客户端】——实现文件属性窗口

目录

文件属性对话框

设置字体样式

 获取文件的信息

显示文件属性对话框

当我们点击文件中的属性,则会弹出一个属性对话框: 

 

实现过程:

0.设置 属性 菜单项的槽函数

1.鼠获取鼠标选中的QListWidgetItem,它包含 图标文件名

2.根据文件名 找到对应的FileInfo对象

ps:FileInfo是文件信息对象,在显示文件列表的过程中,就已经将每个文件的 文件信息保存到 QList<FileInfo*> m_fileInfoList

3.将FileInfo对象 中的信息设置 进文件属性对话框中。 

文件属性对话框

 实现过程:

自定义一个filePropertyiInfoDialog类型,继承QDialog类型, 其中包括

filePropertyiInfoDialog.h, filePropertyiInfoDialog.cpp ,filePropertyiInfoDialog.ui文件

filePropertyiInfoDialog.ui界面设计:

 

设置字体样式

 filePropertyiInfoDialog.cpp,在构造函数中设置字体的颜色:

filePropertyiInfoDialog::filePropertyiInfoDialog(QWidget *parent) :QDialog(parent),ui(new Ui::filePropertyiInfoDialog){ui->setupUi(this);QString style1 = QString("color: rgb(11, 11, 11);font: 75 14pt \"Agency FB\";");QString style2 = QString("font: 14pt \"隶书\";color: rgb(255, 156, 16);");this->setWindowTitle("文件属性");ui->lbl_fileName->setStyleSheet(style1);ui->lbl_fileSize->setStyleSheet(style1);ui->lbl_download->setStyleSheet(style1);ui->lbl_shareStatus->setStyleSheet(style1);ui->lbl_uploadTime->setStyleSheet(style1);ui->lbl_uploadUser->setStyleSheet(style1);ui->val_fileName->setStyleSheet(style2);ui->val_fileSize->setStyleSheet(style2);ui->val_download->setStyleSheet(style2);ui->val_shareStatus->setStyleSheet(style2);ui->val_uploadTime->setStyleSheet(style2);ui->val_uploadUser->setStyleSheet(style2);}  获取文件的信息 //设置属性菜单项的槽函数connect(m_propertyAction,&QAction::triggered,this,[=]{dealfile(DealFile::Show);});void myfile::dealfile(DealFile cmd){//获取鼠标选中的QListWidgetItemQListWidgetItem* item=ui->listWidget->currentItem();for(int i=0;i<m_fileInfoList.length();i++){//根据文件名找到对应的文件信息FileInfo* fileInfo=m_fileInfoList[i];if(fileInfo->fileName==item->text()){if(cmd==DealFile::Show){//显示文件属性showFileProperty(fileInfo);}}}} 显示文件属性对话框 //fileinfo.h文件struct FileInfo{QString user; //用户名QString md5; //md5QString createTime; //上传时间QString fileName; //文件名称int shareStatus; //共享状态, 0为没有共享, 1为共享int pv; //文件下载量,下载一次加1QString url; //文件urlint size; //文件大小QString type; //文件类型};//filePropertyiInfoDialog.cpp文件//显示filePropertyiInfoDialog文件属性对话框void myfile::showFileProperty(FileInfo *fileInfo){//弹出对话框,显示文件属性filePropertyiInfoDialog* dialog=new filePropertyiInfoDialog();dialog->setFileInfo(fileInfo);dialog->show();}//将fileInfo的信息设置到filePropertyiInfoDialog中void filePropertyiInfoDialog::setFileInfo(FileInfo *fileInfo){//设置文件名称ui->val_fileName->setText(fileInfo->fileName);int size=fileInfo->size;QString fileSize;//设置文件大小if(size<1024){fileSize=QString("%1字节").arg(QString::number(size));}else if(size>=1024){fileSize=QString("%1 kb").arg(QString::number(size/1024));}else if(size>=1024*1024){fileSize=QString("%1 kb").arg(QString::number(size/(1024*1024)));}ui->val_fileSize->setText(fileSize);//设置文件的urlui->val_download->setText(fileInfo->url);//设置文件的分享状态ui->val_shareStatus->setText(QString::number(fileInfo->shareStatus));//设置文件的上传时间ui->val_uploadTime->setText(fileInfo->createTime);//设置文件的使用者ui->val_uploadUser->setText(fileInfo->user);}

协助本站SEO优化一下,谢谢!
关键词不能为空
同类推荐
«    2025年12月    »
1234567
891011121314
15161718192021
22232425262728
293031
控制面板
您好,欢迎到访网站!
  查看权限
网站分类
搜索
最新留言
文章归档
网站收藏
友情链接