from kivy.app import App
from kivy.uix.floatlayout import FloatLayout
from kivy.properties import ObjectProperty, StringProperty
from kivy.lang.builder import Builder
Builder.load_file("Poput_ex.kv")
TXT = """Мы весёлые ребята,
наше имя — октябрята.
Мы не любим лишних слов.
— Будь готов! — Всегда готов.
Друг за другом станем рядом
и одним большим отрядом
скажем сотней голосов:
— Будь готов! — Всегда готов."""
class Controller(FloatLayout):
def __init__(self, **kwargs):
super(Controller, self).__init__(**kwargs)
class ControllerApp(App):
def build(self):
self.txt = 'some text'
return Controller()
if __name__ == '__main__':
ControllerApp().run()
#: import Factory kivy.factory.Factory
MyPopup@Popup:
auto_dismiss: False
title: "Мой Попуп"
BoxLayout:
orientation: 'vertical'
padding: 20
Button:
text: 'My status is: ' + self.state
#on_press:
Label:
id: my_custom_label
text: app.text
Button:
text: 'Close me!'
on_press: root.dismiss()
from kivy.app import App
from kivy.lang import Builder
from kivy.uix.scrollview import ScrollView
from kivy.uix.button import Button
from kivy.uix.boxlayout import BoxLayout
class MyButton(Button):
color=(0, 0, 0, 1)
valign='bottom'
padding_y=10
background_color=(.93, .91, .67, 1)
background_normal=''
class Box(BoxLayout):
orientation = "vertical"
padding = [5]
spacing = 10
def on_kv_post(self, widget):
self.add_widget(MyButton(text='И. С. Тургенев. «Отцы и дети»', on_press=self.btn_press))
def btn_press(self,instance):
self.clear_widgets()
sc = ScrollView(size_hint=(1, None))
x = 1
data = ''
while True:
if x == 1:
url = "http://loveread.ec/read_book.php?id=12021&p=1"
elif x < 57:
url = "http://loveread.ec/read_book.php?id=12021&p=" + f'{x}'
else:
break
request = requests.get(url)
soup = BeautifulSoup(request.text, "html.parser")
teme = soup.find_all("p", class_="MsoNormal")
for temes in teme:
data += temes.text
x = x + 1
sc.add_widget(Label(text=f'{data}'))
self.add_widget(sc)
class MyApp(App):
def build(self):
return Box()
<MyButton@Button>:
color: (0, 0, 0, 1),
halign: 'left',
valign: 'bottom',
padding_y: 10,
background_color: (.93, .91, .67, 1),
background_normal: ''
Screen:
MyButton:
text: 'Гончаров'
MyButton:
text: 'Достоевский'
from kivy.uix.button import Button
class MyButton(Button):
color=(0, 0, 0, 1)
valign='bottom'
padding_y=10
background_color=(.93, .91, .67, 1)
background_normal=''
bl.add_widget(MyButton(text='И. А. Гончаров. Обломов.'))
bl.add_widget(MyButton(text='Ф. М. Достоевский. Преступление и наказание.'))