QT:制作图片浏览器

这篇具有很好参考价值的文章主要介绍了QT:制作图片浏览器。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

widget.h

#ifndef WIDGET_H
#define WIDGET_H

#include <QWidget>

namespace Ui {
class Widget;
}

class Widget : public QWidget
{
    Q_OBJECT

public:
    explicit Widget(QWidget *parent = 0);
    ~Widget();

private slots:

    void on_pb_2_clicked();

    void on_pb_left_clicked();

    void on_pb_3_clicked();

private:
    Ui::Widget *ui;
    static int i;   //索引
    QStringList picfiles;   //存储路径
};

#endif // WIDGET_H

widget.cpp

#include "widget.h"
#include "ui_widget.h"
#include <QFileDialog>  //文件对话框

int Widget::i = 0;  //初始化i为0

Widget::Widget(QWidget *parent) :
    QWidget(parent),
    ui(new Ui::Widget)
{
    setWindowTitle("图片浏览器");
    setFixedSize(530,500);

    ui->setupUi(this);   //ui操作在此下面写
}

Widget::~Widget()
{
    delete ui;
}

void Widget::on_pb_2_clicked()
{
    picfiles = QFileDialog::getOpenFileNames(this,"打开图片","..","图片文件(*.png)");  //父类、窗口标题、上一级路径打开、文件类型
    ui->te->setText(picfiles[i]);
    ui->lb_2->setScaledContents(true);   //设置标签自适应大小
    ui->lb_2->setPixmap(QPixmap(picfiles.at(i)));  //设置标签中装入索引为i的图片
}

void Widget::on_pb_left_clicked()
{
    if(i != 0)
    {
       ui->te->setText(picfiles[--i]);
       ui->lb_2->setPixmap(QPixmap(picfiles.at(i)));
    }
    else
    {
        ui->te->setText(picfiles[picfiles.size()-1]);
        ui->lb_2->setPixmap(QPixmap(picfiles.at(picfiles.size()-1)));
        i = picfiles.size()-1;
    }
}

void Widget::on_pb_3_clicked()
{
    if(i != picfiles.size()-1)
    {
       ui->te->setText(picfiles[++i]);
       ui->lb_2->setPixmap(QPixmap(picfiles.at(i)));
    }
    else
    {
        ui->te->setText(picfiles[0]);
        ui->lb_2->setPixmap(QPixmap(picfiles.at(0)));
        i = 0;
    }
}

main.cpp

#include "widget.h"
#include <QApplication>

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    Widget w;
    w.show();

    return a.exec();
}

widget.ui

QT:制作图片浏览器,qt

结果

QT:制作图片浏览器,qt

QT:制作图片浏览器,qt

QT:制作图片浏览器,qt

QT:制作图片浏览器,qt

QT:制作图片浏览器,qt

QT:制作图片浏览器,qt文章来源地址https://www.toymoban.com/news/detail-731130.html

到了这里,关于QT:制作图片浏览器的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Qt+C++自建网页浏览器-Chrome blink最新内核基础上搭建-改进版本

     程序示例精选 Qt+C++自建网页浏览器-Chrome blink最新内核基础上搭建-改进版本 如需安装运行环境或远程调试,见文章底部个人 QQ 名片,由专业技术人员远程协助! 这篇博客针对Qt+C++自建网页浏览器-Chrome最新内核基础上搭建-改进版本编写代码,代码整洁,规则,易读。 学习

    2024年02月09日
    浏览(34)
  • QT充当客户端模拟浏览器等第三方客户端对https进行双向验证

    在 ssl单向证书和双向证书校验测试及搭建流程 文章中,已经做了基于https的单向认证和双向认证,,, 在进行双向认证时,采用的是curl工具或浏览器充当客户端去验证。 此次采用QT提供的接口去开发客户端向服务器发送请求,来验证https的双向认证流程。 依然以 ssl单向证书

    2024年02月14日
    浏览(40)
  • 浏览器网页内嵌Qt-C++音视频播放器的实现,支持软硬解码,支持音频,支持录像截图,支持多路播放等,提供源码工程下载

        在浏览器中实现播放RTSP实时视频流,⼤体上有如下⼏个⽅案: ⽅案一:浏览器插件⽅案 ActiveX、NPAPI、PPAPI     ActiveX插件适用于IE浏览器,NPAPI与PPAPI插件适用于谷歌浏览器,不过这些插件都已经不被浏览器所支持。 ⽅案二:先转码再转流⽅案     ⼯作原理是架设一

    2024年01月17日
    浏览(66)
  • oss/obs对象存储上传图片,在浏览器输入地址却是下载图片。不能直接在浏览器上查看。

    1.问题 oss/obs对象存储上传图片获取链接地址后,在浏览器输入地址却是下载。不能直接在浏览器上面浏览图片信息。 2.解决 上传文件的时候需要设置:content-type类型,需要指示浏览器这是什么类型,这样才能在浏览器上面浏览图片信息。浏览器是根据response-headerl里面的Con

    2024年02月15日
    浏览(30)
  • 开源python双屏图片浏览器软件

    需要安装pyqt5这个库

    2024年02月05日
    浏览(31)
  • 基于Flutter的图片浏览器的实现

                                 1.在包结构中创建images包来存放我们用到的图片,在pubspec.yaml中声明路径:     2. 检查虚拟机是否正常运行: 大体流程: 特别注意: 我们创建继承自 State 的 _MyHomePageState 类的用处是 状态管理: State 对象是与 StatefulWidget 相关联的状态的

    2024年02月05日
    浏览(31)
  • 百度--搜索引擎是怎么实现的--如何制作一个搜索浏览器

    1.搜索引擎是怎么实现的? 搜索引擎是通过以下步骤实现的: 网页抓取(Crawling) :搜索引擎会使用网络爬虫(Web Crawler)自动地从互联网上抓取网页内容。爬虫按照一定的规则遍历网页并提取网页内容,包括文本、链接、标签等。 网页索引(Indexing) :抓取到的网页内容会

    2024年02月12日
    浏览(47)
  • 对于随机生成图片接口浏览器走缓存的问题

    前提场景 目前有一个api 他可以随机生成一张图片,我通过v-for循环一个Array渲染出来几个img 并且都调用了该接口,但是每个img都是一样的图片 具体代码如下 图片如下所示 只需要给api加个query,因为接口后端不会读这个query所以不影响,又因为有了这个query使每个请求接口都不

    2024年01月21日
    浏览(32)
  • 360极速浏览器以及360安全浏览器在兼容模式下验证码图片显示不来,但是极速模式可以显示?

    最近遇到一个验证码出不来的问题,在360极速浏览器以及360安全浏览器在兼容模式下 验证码图片显示不来 ,效果如下: 这个验证码的代码元素如下,是一张图片,由接口提供的一个图片链接,返回的是文件流。 我找了一个其他网址,发现在360极速浏览器以及360安全浏览器在

    2024年02月16日
    浏览(33)
  • linux centos安装google chrome浏览器使用headless无头模式 制作docker镜像

    chromedriver 驱动下载地址: https://npm.taobao.org/mirrors/chromedriver/ linux centos安装google chrome浏览器使用headless无头模式 用java开发爬虫,或者需要java操作控制浏览器来渲染页面,抓取页面元素,都需要在linux安装google chrome浏览器,然后就可以通过chrome driver来连接操作chrome浏览器了,

    2024年02月09日
    浏览(47)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包