/
main_app.py
77 lines (66 loc) · 2.51 KB
/
main_app.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
from PyQt5.QtWidgets import *
from PyQt5.QtCore import *
from PyQt5.QtGui import *
import sys
from calendario import Calendario
from cores import Cores
from matematica import Matematica
class App(QMainWindow):
def __init__(self, *args, **kwargs):
super(App, self).__init__(*args, **kwargs)
self.setWindowTitle("A Maria a aprender com o pai")
self.set_toolbar()
self.set_menus()
self.setStatusBar(QStatusBar(self))
self.set_triggers()
self.showMaximized()
def set_menus(self):
menu = QMenuBar()
self.menus = dict()
menu_ficheiro = QMenu("Ficheiro", self)
menu_acoes = QMenu("Ações", self)
self.menus['sair'] = QAction("Sair", self)
self.menus['sair'].triggered.connect(self.close)
menu.addMenu(menu_ficheiro)
menu.addMenu(menu_acoes)
for x in self.menus.values():
menu_ficheiro.addAction(x)
for x in self.icons.values():
menu_acoes.addAction(x)
self.setMenuBar(menu)
def set_toolbar(self):
self.icons = dict()
tbar = QToolBar()
tbar.setIconSize(QSize(16, 16))
self.icons['cores'] = QAction(QIcon("Icons/cores.png"), "Cores", self)
self.icons['cores'].setStatusTip("O pai vai ensinar as cores à Maria")
self.icons['calculadora'] = QAction(QIcon("Icons/calculadora.png"), "Calculadora", self)
self.icons['calculadora'].setStatusTip("O pai vai ensinar os números à Maria")
self.icons['calendario'] = QAction(QIcon("Icons/calendario.png"), "Calendário", self)
self.icons['calendario'].setStatusTip("O pai vai ensinar os dias à Maria")
self.icons['culinaria'] = QAction(QIcon("Icons/culinaria.png"), "Culinária", self)
self.icons['culinaria'].setStatusTip("Será que a Maria ainda se lembra das receitas que a mãe ensinou?")
for x in self.icons.values():
tbar.addAction(x)
tbar.setContextMenuPolicy(Qt.PreventContextMenu) # Esta linha previne que o utilizador consiga remover a toolbar
self.addToolBar(tbar)
def set_triggers(self):
self.icons['calendario'].triggered.connect(self.tarefa_calendario)
self.icons['cores'].triggered.connect(self.tarefa_cores)
self.icons['calculadora'].triggered.connect(self.tarefa_calculadora)
self.icons['culinaria'].triggered.connect(self.tarefa_culinaria)
def tarefa_culinaria(self):
pass
def tarefa_calculadora(self):
self.calc = Matematica()
self.setCentralWidget(self.calc)
def tarefa_calendario(self):
self.c = Calendario()
self.setCentralWidget(self.c)
def tarefa_cores(self):
self.cor = Cores()
self.setCentralWidget(self.cor)
if __name__ == '__main__':
raiz = QApplication(sys.argv)
app = App()
raiz.exec_()