Народ, объясните, как вообще можно сделать функцию, чтоб например при нажатии кнопки (QToolButton) показывалась другая картинка из рабочей папки. Собсна как next и previous. Во всяких image viewer'ах.
Если можно поточнее, а то я ваще не врублюсь как сделать. Спасибо.
QDirModel тебе поможет.
QString rooPath = "" ; // папка с файлами с картинками
QDirModel * modelDirs= new QDirModel(QStringList(),QDir::Files, QDir::Name);
rootIndex = modelDirs->index(rootPath);
enum QDirModel::Roles хранить все пути и имена файлов .... при нажатии кнопок Prev Next делаем перемещение по модели
selectPrevDir()
{
int iRow = listDirs->currentIndex().row();
if ( iRow > 0 )
{
listDirs->setCurrentIndex(modelDirs->index( iRow - 1, 0, rootIndex ) );
}
if ( iRow == 0 )
{
listDirs->setCurrentIndex(modelDirs->index(modelDirs->rowCount(rootIndex)-1, 0, rootIndex ));
}
}
selectNextDir()
{
int iRow = listDirs->currentIndex().row();
int curRowCount = modelDirs->rowCount(rootIndex);
if (iRow < curRowCount-1 )
{
listDirs->setCurrentIndex(modelDirs->index( iRow + 1, 0, rootIndex ) );
}
if ( curRowCount-1 == iRow )
{
listDirs->setCurrentIndex(modelDirs->index( 0, 0, rootIndex ) );
}
}
ну а через QDirModel::fileInfo( const QModelIndex & index ) можно вообще все что хочешь получить из файла.