импортировать следующее:
import sys
from PyQt4.QtCore import *
from PyQt4.QtGui import *
from PyQt4 import QtGui, QtCore
В классе Ui_MainWindow (объект) заменить объект на QWidget:
Ui_MainWindow(QWidget)
Вы можете установить текущую выбранную позицию идентификатора в глобальной переменной следующим образом: Например,
let currentPos = 1;
, затем по кнопке prevButton вы можете перемещаться
arr [currentPos-1] & amp; изменить currentPos = currentPos -1;
blockquote>и таким же образом для nextButton
arr [currentPos + 1] & amp; изменить currentPos = currentPos + 1;
blockquote>
Вы можете сделать это различными способами.
var arr = [{'id':4},{'id':5},{'id':7},{'id':8},{'id':9}], arrids=arr.map(e=>e.id);
var current_id = 5, prev_btn = $("#prev"), next_btn = $("#nex");
prev_btn.click(e=>{
current_id--;
var prevObj = arr[arrids.indexOf(current_id)] ? arr[arrids.indexOf(current_id)] : null;
console.log(prevObj);
});
next_btn.click(e=>{
current_id++;
var nextObj = arr[arrids.indexOf(current_id)] ? arr[arrids.indexOf(current_id)] : null;
console.log(nextObj);
})
Измените это для своих нужд.
Вы можете попробовать этот код здесь:
Описание:
Точный индекс предмета и проверить свою текущую позицию в массиве.
отображают текущий индекс.
, когда предыдущая кнопка проверяет, что первый элемент не является массивом, если не обуславливает декремент и отображает значение текущего элемента -1.
, когда вы щелкаете по следующему и тому же условию, и это последний элемент или нет, отметьте здесь и измените текущий индекс и приращение отображаемого значения 2.
в следующем приращении показа нажатия кнопки за раз по 2, потому что, когда текущий индекс увеличивается, тогда он показывает приращение 2, основная причина - это увеличение элемента 1, а индекс содержит 0. Таким образом, это увеличение на 2 за один раз.
Если вы показываете после itemIndex--;
, то вы увеличиваете на единицу.
var arr = [{'id':4},{'id':5},{'id':7},{'id':8},{'id':9}];
var current_id = 5;
//find the your current id is exist in the array
var itemIndex = arr.map(function(o) { return o.id; }).indexOf(current_id);
//display the value of index
document.getElementById('display').innerHTML = itemIndex+1;
document.getElementById('prev').addEventListener('click', function(e) {
if(itemIndex!=-1 && itemIndex != 0){
document.getElementById('display').innerHTML = itemIndex;
itemIndex--;
}
});
document.getElementById('next').addEventListener('click', function(e) {
if(itemIndex!==-1 && arr.length-1 > itemIndex){
document.getElementById('display').innerHTML = itemIndex+2;
itemIndex++;
/*document.getElementById('display').innerHTML = itemIndex+1;*/
}
});
<div id="display"></div>
<button id="prev">prev</button>
<button id="next">next</button>
Спасибо