Accueil > > > Crypt.cpp
C++ FORMAT D'IMAGE AVEC QT
Crypt.cpp
Informations sur ce code source
Ce code source permet d'enregistrer une image (png, jpg, bmp, gif...) sous un format ".rymg"
(Ce format est en fait un QSetting de QPixmap.)
Les images enregistrées ne sont donc lisible que par un logiciel Qt.
Il peut être pratique pour empêcher l
Fichier : Crypt.cpp
Nombre de lignes : 99 lignes
Afficher ce fichier en plein écran
- //POP70
-
- #include "Crypt.h"
- #include <fstream>
-
- Crypt::Crypt()
- {
- QApplication::setStyle(new QPlastiqueStyle);
-
- creerObjets();
- creerMenus();
- creerActions();
- creerConnexions();
-
- setWindowTitle("Ry-Cryptage");
- setWindowState(Qt::WindowMaximized);
- setCentralWidget(centre);
- }
-
- void Crypt::creerObjets()
- {
- m_chemin = "#Pas de fichier";
- all = new QVBoxLayout;
- all->addWidget(&label);
- centre = new QWidget;
- centre->setLayout(all);
- label.setAlignment(Qt::AlignCenter);
-
- }
-
-
- void Crypt::creerMenus()
- {
- m_menuFichier = menuBar()->addMenu("&Fichier");
-
- }
-
- void Crypt::creerActions()
- {
- m_actOuvrir = m_menuFichier->addAction("&Ouvrir");
- m_actOuvrir->setShortcut(tr("Ctrl+O"));
- m_actEnregistrer = m_menuFichier->addAction("&Enregistrer");
- m_actEnregistrer->setShortcut(tr("Ctrl+E"));
- m_actQuitter = m_menuFichier->addAction("&Quitter");
- m_actQuitter->setShortcut(tr("Ctrl+Q"));
- }
-
- void Crypt::creerConnexions()
- {
- connect(m_actOuvrir, SIGNAL(triggered()), this, SLOT(ouvrir()));
- connect(m_actEnregistrer, SIGNAL(triggered()), this, SLOT(enregistrer()));
- connect(m_actQuitter, SIGNAL(triggered()), qApp, SLOT(quit()));
- }
-
- void Crypt::ouvrir()
- {
- QString chemin = QFileDialog::getOpenFileName(this, "Ouvrir un fichier...", QString());
- QFile file(chemin);
- if (!chemin.isEmpty()) {
- m_chemin = chemin;
- }
-
- if (m_chemin.right(5) != ".rymg"){
- QPixmap z = QPixmap(m_chemin);
- QSize size(label.width(), label.height());
- QPixmap img1 = z.scaled(size, Qt::KeepAspectRatio);
-
- label.setPixmap(img1);
- }
- else {
-
-
- const char *ch = m_chemin.toStdString().c_str();
- QSettings *settings = new QSettings(ch, QSettings::IniFormat);
- QPixmap image = settings->value("RyIMG").value<QPixmap>();
-
-
- QSize size(label.width(), label.height());
- QPixmap img1 = image.scaled(size, Qt::KeepAspectRatio);
- label.setPixmap(img1);
- }
- }
-
- void Crypt::enregistrer()
- {
- QString chemin = QFileDialog::getSaveFileName(this, "Enregistrer le fichier", m_chemin, "Image (*.rymg)");
- QFile file(chemin);
- if(!file.open(QIODevice::WriteOnly))
- return;
-
- QPixmap image(m_chemin);
- const char *ch = chemin.toStdString().c_str();
- QSettings *settings = new QSettings(ch, QSettings::IniFormat);
- settings->setValue("RyIMG", image);
-
-
- }
-
|