-
Total de itens
2 -
Registro em
-
Última visita
Sobre phvbrito
phvbrito's Achievements
0
Reputação
-
phvbrito começou a seguir Ajuda com Kivy e MDExpansionPanel
-
Boa tarde, pessoal vejam se alguém pode me dar uma força, já tentei de um tudo e não consego descobrir o que estou fazendo de errado, não consigo fazer os itens serem exibidos. este codigo sera modificado depois para exibir os itens finais, segue... #TelaConsultaPro.py from kivymd.uix.screen import MDScreen from kivy.uix.screenmanager import SlideTransition from kivymd.uix.expansionpanel import MDExpansionPanel, MDExpansionPanelThreeLine from kivy.uix.boxlayout import BoxLayout from kivy.uix.label import Label from kivy.uix.button import Button class TelaConsultaPro(MDScreen): def transicao_tela(self, tela): self.manager.transition = SlideTransition(direction="right") self.manager.current = tela def on_start(self): for i in range(10): panel = MDExpansionPanel(text="Painel " + str(i)) content = BoxLayout(orientation="vertical") content.add_widget(Label(text="Conteúdo do painel " + str(i))) content.add_widget(Button(text="Botão " + str(i))) panel.content = content self.ids.box.add_widget(panel) #TelaConsultaPro.kv <TelaConsultaPro>: MDBoxLayout: orientation: 'vertical' MDTopAppBar: title: "Cadastro" left_action_items: [["menu", lambda x: app.callback()]] right_action_items: [["arrow-left", lambda x: root.transicao_tela("TelaPrincipal")]] elevation: 10 md_bg_color: "#000000" specific_text_color: "white" MDScrollView: MDGridLayout: id: box cols: 1 adaptive_height: True MDTopAppBar: type: "bottom" mode: "free-end" elevation: 10 md_bg_color: "#000000"
-
Não consigo fazer esse menu DropDown funcionar de jeito algum, alguém poderia me ajudar mostrando o que fiz de errado? este é o meu .py #controle.py from kivy.lang import Builder from kivymd.app import MDApp from kivymd.uix.boxlayout import MDBoxLayout from kivy.uix.screenmanager import ScreenManager, Screen from kivymd.uix.menu import MDDropdownMenu from kivy.metrics import dp from kivy.properties import StringProperty from kivymd.uix.list import OneLineIconListItem class IconListItem(OneLineIconListItem): icon = StringProperty() class MainTela(ScreenManager): pass class TelaLogin(Screen): pass class TelaMenu(Screen): pass class TelaConsulta(Screen): def popup(self): menu_items = [ { "viewclass": "IconListItem", "icon": "git", "text": f"Item {i}", "height": dp(56), "on_release": lambda x=f"Item {i}": self.set_item(x), } for i in range(5) ] self.menu = MDDropdownMenu( caller=self.TelaConsulta.ids.drop_item, items=menu_items, position="center", width_mult=4, ) menu_items = [ { "viewclass": "IconListItem", "icon": "git", "text": f"Item {i}", "height": dp(56), "on_release": lambda x=f"Item {i}": self.set_item(x), } for i in range(5) ] self.menu.bind() def set_item(self, text_item): self.TelaConsulta.ids.drop_item.set_item(text_item) self.menu.dismiss() def build(self): return self.TelaConsulta class TelaCadastro(Screen): pass class Controle(MDApp): pass if __name__ == '__main__': Controle().run() este é o meu .kv #controle.kv MainTela: TelaLogin: TelaMenu: TelaConsulta: TelaCadastro: name:'TelaCadastro' <TelaLogin@FloatLayout>: name: 'TelaLogin' Image: source: "logo.png" allow_stretch: True size_hint: 0.3, 0.3 pos_hint: {"center_x": 0.5, "center_y": 0.8} MDTextField: pos_hint: {"center_x": 0.5, "center_y": 0.6} size_hint_x: 0.5 hint_text:"Digite o usuário" MDTextField: pos_hint: {"center_x": 0.5, "center_y": 0.5} size_hint_x: 0.5 hint_text:"Digite a senha" password: True MDRoundFlatButton: pos_hint: {"center_x": 0.5, "center_y": 0.4} size_hint_x: 0.5 text:"Confirmar" text_color:"gray" on_release: app.root.current = 'TelaMenu' MDLabel: text: "By Phvbrito" pos_hint: {"center_x": 0.9, "center_y": 0.05} <TelaMenu@FloatLayout>: name:'TelaMenu' MDTopAppBar: title: 'Controle' pos_hint: {'center_x': 0.5, 'center_y': 0.9} left_action_items: [['menu', lambda x: app.stop()]] right_action_items: [['logout', lambda x: app.stop()]] MDRaisedButton: font_size: 25 text: "Consulta" md_bg_color: "red" size_hint: (.3, .3) pos_hint: {"center_x": 0.3, "center_y": 0.6} on_release: app.root.current = 'TelaConsulta' MDRaisedButton: font_size: 25 text: "Cadastro" md_bg_color: "red" size_hint: (.3, .3) pos_hint: {"center_x": 0.7, "center_y": 0.6} on_release: app.root.current = 'TelaCadastro' MDRaisedButton: font_size: 25 text: "Sair" md_bg_color: "red" size_hint: (.3, .3) pos_hint: {"center_x": 0.5, "center_y": 0.2} on_release: app.stop() <TelaCadastro@FloatLayout>: name:'TelaCadastro' MDTopAppBar: title: 'Cadastro' pos_hint: {'center_x': 0.5, 'center_y': 0.9} left_action_items: [['menu', lambda x: app.stop()]] right_action_items: [['logout', lambda x: app.stop()]] MDTopAppBar: pos_hint: {'center_x': 0.5, 'center_y': 0.05} left_action_items: [['arrow-left', lambda x: setattr(root.manager, 'current', 'TelaMenu')]] MDRaisedButton: font_size: 25 text: "Piso" md_bg_color: "red" size_hint: (.3, .3) pos_hint: {"center_x": 0.3, "center_y": 0.65 } MDRaisedButton: font_size: 25 text: "Vinilico" md_bg_color: "red" size_hint: (.3, .3) pos_hint: {"center_x": 0.7, "center_y": 0.65 } MDRaisedButton: font_size: 25 text: "Rejuntes" md_bg_color: "red" size_hint: (.3, .3) pos_hint: {"center_x": 0.3, "center_y": 0.3 } MDRaisedButton: font_size: 25 text: "Rodapé" md_bg_color: "red" size_hint: (.3, .3) pos_hint: {"center_x": 0.7, "center_y": 0.3 } <TelaConsulta@FloatLayout> name: 'TelaConsulta' MDTopAppBar: title: 'Controle' pos_hint: {'center_x': 0.5, 'center_y': 0.9} left_action_items: [['menu', lambda x: app.stop()]] right_action_items: [['logout', lambda x: app.stop()]] MDScreen: MDDropDownItem: id: drop_item pos_hint: {'center_x': .5, 'center_y': .5} text: 'Item 0' on_release: app.menu.open() <IconListItem> IconLeftWidget: icon: root.icon