⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 picturescan.cpp~

📁 几个qt-linux的练习小程序
💻 CPP~
字号:
#include "pictureScan.h"

#include <qvariant.h>
#include <qlabel.h>
#include <qpushbutton.h>
#include <qlayout.h>
#include <qtooltip.h>
#include <qwhatsthis.h>
#include <qimage.h>
#include <qpixmap.h>



static int i ,w ,h;

pictureScan::pictureScan(QWidget* parent, const char* name)
	: QDialog(parent, name)
{	
	i = 0;
	w = 800;
	h = 600;

	picture = new QLabel(tr("1111"), this);
	picture -> setAutoResize(false);
	picture -> setMaximumSize(w,h);
	
	pic[0] = QImage("images/1.jpg");
	pic[1] = QImage("images/2.jpg");
	pic[2] = QImage("images/3.jpg");
	setCaption("scan");
	picture -> setPixmap(pic[i]);
	
	prvP = new QPushButton("<",this);
	nextP = new QPushButton(">",this);
	zoomin = new QPushButton("+",this);
	zoomout = new QPushButton("-",this);



	connect(prvP, SIGNAL(clicked()),
            this, SLOT(prvPClicked()));

        connect(nextP, SIGNAL(clicked()),
            this, SLOT(nextPClicked()));

 	   
	connect(zoomin, SIGNAL(clicked()),
            this, SLOT(zoominClicked()));

 	   
	connect(zoomout, SIGNAL(clicked()),
            this, SLOT(zoomoutClicked()));

	QHBoxLayout *topLayout = new QHBoxLayout;
	topLayout->addWidget(picture);

	QHBoxLayout *downLayout = new QHBoxLayout;
        downLayout->addWidget(prvP);  
	downLayout->addWidget(nextP);    
	downLayout->addWidget(zoomin);    
	downLayout->addWidget(zoomout);

        QVBoxLayout *mainLayout = new QVBoxLayout(this);
    
	mainLayout->setMargin(11);    
	mainLayout->setSpacing(6);   
	mainLayout->addLayout(topLayout);    
	mainLayout->addLayout(downLayout);
}
	
void pictureScan::prvPClicked()
{
	i--;
	if(i <= 0)
		prvP->setDisabled(true),
		i = 0;
	if(i < 2)
		nextP->setDisabled(false),
	 picture-> setPixmap(pic[i]);

}	

void pictureScan::nextPClicked()
{
	i++;
	if(i >= 0)
		prvP->setDisabled(false);
	if(i == 2)
		nextP->setDisabled(true);
	
	picture -> setPixmap(pic[i]);
}	

void pictureScan::zoominClicked()
{
        w += 100;
    
	h += 100;
    
	pic[i] = pic[i].scale(w,h);
    
	picture -> setMaximumSize(800,600);
    
	picture -> setPixmap(pic[i]);

}	

void pictureScan::zoomoutClicked()
{
        w -= 100;
    
	h -= 100;
    
	pic[i] = pic[i].scale(w,h);
    
	picture -> setMaximumSize(800,600);
    
	picture -> setPixmap(pic[i]);

}	


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -