При клацанні кнопки Створити об'єкт, потрібно створити об'єкт класу 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);


Завдання

Створити графічний інтерфейс для проекту Тамагочі, виводячи стан об'єкту текстово та графічно.

Last modified: Thursday, 23 February 2017, 4:36 AM