Найти - Пользователи
Полная версия: PyQt4
Начало » GUI » PyQt4
1
kapamba
Здраствуйте подскажите пожалуяста решение задачи )
Питон только начал изучать.
Есть список spisok =
как зделать так чтобы значения списка по очереди выводились только при нажатии на клавишу,
тоесть нажал появилась “а” нажал появилась “b”.
P.S.Отдельно поток создавать или как ? чтоб форма сама невисла…
Пожалуйста пример напишите. Спасибо.
dartNNN
Вам в раздел “центр помощи”. Там можно задавать вопросы типа “сделайте за меня”.
kapamba
хоть направление дайте… а то уменя касаемо питона еще логика не сформировалась )
dartNNN
Логика формируется не касаемо питона) она формируется касаемо программрования) а еще лучше касаемо всей жизни)
Но раз вам надо направление….
Вы в курсе, что есть такая папка
C:\Python31\Lib\site-packages\PyQt\examples
?
Далее, вы знаете, что есть такая вещь как свойство объекта (а окно приложения, если действительно его собираетесь делать, тоже объект)?
Вы знаете, что оно сохраняется в течении всего времени жизни объекта?
Вы уже знакомы с тем, как писать обработчики события нажатия кнопки?

Вот, вроде бы все вопросы, на которые вы должны ответить, чтобы справиться с задачей.
leonid_10
kapamba
хоть направление дайте… а то уменя касаемо питона еще логика не сформировалась
Поскольку я сам не очень силён, то попробую дать направление.
Нужно создать переменную, например, self.number=0, значение которой будет увеличиваться на единицу при нажатии клавиши self.number+=1 и использовать эту переменную при отображении элемента списка
element=spisok
Barsah
Вот достаточно простой вариант, возможно поможет. Код полностью работоспособен, можешь загрузить и посмотреть всю логику.
# -*- coding: utf-8 -*-
from PyQt4 import QtGui, QtCore
import sys

class MyWindow(QtGui.QWidget):
def __init__(self, file, parent=None):
QtGui.QWidget.__init__(self,parent)
self.spisok= ['a','b','c']
self.btn = QtGui.QPushButton('try!',self)
self.btn.setGeometry(25,25,25,25)
self.btn.clicked.connect(self.onClickTry)
self.i = 0
def onClickTry(self):
try:
if self.i <=len(self.spisok):
print(self.spisok[self.i])
self.i+=1
except:
print('stop!')

if __name__ == '__main__':
app = QtGui.QApplication(sys.argv)
window = MyWindow(sys.argv)
window.resize(400,240)
window.show()
sys.exit(app.exec_())
Кстати, если интересно, убери конструкцию try except и посмотри что будет. Вот так меня учили питону))
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB