Інтерфейс Тамагочі (зображення)
При клацанні кнопки Створити об'єкт, потрібно створити об'єкт класу Tama, але при цьому він має стати доступним для інших функцій та методів проекту. Отже, це має бути глобальний об'єкт:
def pushButton_clicked(self):
imya = self.lineEdit.text()
global tama
tama=Tamagoci(imya)
self.textEdit.setText(tama.talk())
Кнопка "Повідомити" має оновлювати текстове поле з інформацією про тамагочі (до попереднього вмісту поля додати інформацію про стан з tama.talk():
def pushButton2_clicked(self):
self.textEdit.setText(tama.talk())
Варто змінити методи, що викликають дію проходження часу, бо вона уже закладена у tama.talk(), який викликаємо для оновлення текстового поля.
def eat(self,food = 4):
print ("Thanks!!" )
self.hunger -= food
if self.hunger < 0:
self.hunger = 0
#self.pass_time()
Кнопки інтерфейсу, що відповідають за "Погодувати" та "Побавитись" повинні викликати відповідні методи та tama.talk()
def pushButton3_clicked(self):
self.textEdit.setText(tama.eat())
self.textEdit.setText(tama.talk())
def pushButton4_clicked(self):
self.textEdit.setText(tama.play())
self.textEdit.setText(tama.talk())
Додати зображення у програму можна через елемент інтерфейсу label , зокрема властивість pixmap. Слід імпортувати методи обробки PyQt4.QtGui, та створивши об'єкт класу QPixmap, передати значення цього об'єкту в метод setPixmap. Розмір зображення задається через resize та setScaledContents.
from PyQt4.QtGui import *
pixmap = QPixmap('python.jpg')
self.label.setPixmap(pixmap)
self.label.resize(200,200)
self.label.setScaledContents(True);
Завдання
Створити графічний інтерфейс для проекту Тамагочі, виводячи стан об'єкту текстово та графічно.