Различное поведение топапбара Kivymd в зависимости от того, построенный KV или в PythonPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Различное поведение топапбара Kivymd в зависимости от того, построенный KV или в Python

Сообщение Anonymous »

Я очень новичок в Kivy и создаю приложения GUI в целом, и я только начал писать приложение, используя Kivymd. Я недавно наткнулся на головоломку, которую я не смог решить себя. А именно - я хотел перенести часть макияжа моего приложения из файла *.kv в файл Python, и после этого верхняя навигационная строка приложения начала выглядеть странно - вокруг заголовка не было прокладки, и значок меню был неправомерным место. Бар был отображен на основе моего пользовательского класса, который наследует от Mdtopappbar Kivymd. Вот минимальный пример:
stack.py:

Код: Выделить всё

from kivy.lang import Builder
from kivymd.uix.gridlayout import MDGridLayout
from kivymd.uix.appbar.appbar import (MDTopAppBar, MDTopAppBarTitle,
MDTopAppBarTrailingButtonContainer, MDActionTopAppBarButton)

from kivymd.app import MDApp

class MyFirstTopAppBar(MDTopAppBar):
pass

class MySecondTopAppBar(MDTopAppBar):
def __init__(self, **kwargs):
super().__init__(**kwargs)
self.type = 'small'
trailing = MDTopAppBarTrailingButtonContainer()
trailing.add_widget(MDActionTopAppBarButton(icon="dots-vertical"))
title = MDTopAppBarTitle(text="Title")

self.add_widget(title)
self.add_widget(trailing)

class ExampleFirstApp(MDApp):
def build(self):
return Builder.load_file('stack.kv')

class ExampleSecondApp(MDApp):
def build(self):
gl = MDGridLayout(cols=1)
tab = MySecondTopAppBar()
gl.add_widget(tab)
return gl

#ExampleFirstApp().run()
#ExampleSecondApp().run()
stack.kv:

Код: Выделить всё

MDGridLayout:
cols:1
MyFirstTopAppBar:

:
type: 'small'

MDTopAppBarTitle:
text: "Title"

MDTopAppBarTrailingButtonContainer:
MDActionTopAppBarButton:
icon: "dots-vertical"
«Пример firstApp» выглядит так (правильно, как я и ожидал):
< /p>
while" examplecondapp " значок):

Моя проблема - Во многих уроках я читал, что не должно иметь значения, добавляет ли кто -то виджеты вручную в Python или через KV -файлы - и в этом случае это имеет значение. Может ли кто -нибудь объяснить мне, в чем причина разницы и как исправить версию Python, чтобы она выглядела как та, которая использует KV? Версия 2.0.1.dev0 под Python 3.13

Подробнее здесь: https://stackoverflow.com/questions/794 ... y-kv-or-in
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Разрушение топапбара в JetPack Составьте материал 3
    Anonymous » » в форуме Android
    0 Ответы
    11 Просмотры
    Последнее сообщение Anonymous
  • Как я могу обновить поднятое состояние моего топапбара на пункт назначения?
    Anonymous » » в форуме Android
    0 Ответы
    8 Просмотры
    Последнее сообщение Anonymous
  • Различное поведение функции исследования в Python
    Anonymous » » в форуме Python
    0 Ответы
    17 Просмотры
    Последнее сообщение Anonymous
  • Различное поведение функции исследования в Python
    Anonymous » » в форуме Python
    0 Ответы
    13 Просмотры
    Последнее сообщение Anonymous
  • Различное поведение функции исследования в Python
    Anonymous » » в форуме Python
    0 Ответы
    13 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Python»