📄 imgmainwindow.cpp
字号:
#include "imgmainwindow.h"
#include "showimg.h"
#include "../dirview/dirview.h"
#include <qsplitter.h>
#include <qdir.h>
#include <qfileinfo.h>
#include <qvaluelist.h>
#include <qmessagebox.h>
#include <qstring.h>
#include <qstringlist.h>
#include <qimage.h>
ImgMainWindow::ImgMainWindow()
: QMainWindow()
{
QStringList fmt = QImage::inputFormatList();
QSplitter *splitter = new QSplitter( this, "splitter" );
dirlist = new DirectoryView( splitter, "dirlist", false, fmt );
dirlist->addColumn( "Name" );
dirlist->addColumn( "Type", 70 );
dirlist->setColumnAlignment( 1, AlignRight );
dirlist->setColumnWidth( 1, 0 );
Directory *root = new Directory( dirlist, "/" );
root->setOpen( true );
setCentralWidget( splitter );
splitter->setOrientation( Vertical );
imgview = new ImageViewer( splitter, "img", Qt::WDestructiveClose | Qt::WResizeNoErase );
imgview->setBackgroundColor( black );
QValueList<int> sizeList;
sizeList.append( 130 );
splitter->setSizes( sizeList );
splitter->setResizeMode( dirlist, QSplitter::KeepSize );
connect( dirlist, SIGNAL( folderSelected( const QString & ) ),
this, SLOT ( resetListDir( const QString & ) ) );
connect( dirlist, SIGNAL( fileSelected( const QString &, const QString & ) ),
this, SLOT ( loadImg( const QString &, const QString & ) ) );
connect( imgview, SIGNAL( clicked() ), imgview, SLOT(toggleFullScreen()));
}
void ImgMainWindow::resetListDir( const QString &dir )
{
dirlist->clear();
Directory *root = new Directory( dirlist, "/" );
root->setOpen( true );
dirlist->setDir( dir );
}
void ImgMainWindow::loadImg( const QString &fn, const QString &img )
{
imgview->loadImage( img );
imgview->repaint();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -