from kivy.app import App from kivy.uix.boxlayout import BoxLayout from kivy.uix.gridlayout import GridLayout from kivy.uix.label import Label from kivy.uix.textinput import TextInput from kivy.uix.button import Button class ContactApp(App): def build(self): root = BoxLayout(orientation='horizontal', spacing=10) # Lewa strona - etykiety (Imię, Nazwisko, Numer telefonu) left_column = GridLayout(cols=1, spacing=10) left_column.add_widget(Label(text='Imię')) left_column.add_widget(Label(text='Nazwisko')) phone_label = Label(text='Numer telefonu') left_column.add_widget(phone_label) # Prawa strona - pola do wprowadzania danych right_column = GridLayout(cols=1, spacing=10) name_input = TextInput(background_color=(0.7, 0.7, 1, 1)) # Ustal jasnoniebieski kolor tła dla pól last_name_input = TextInput(background_color=(0.7, 0.7, 1, 1)) phone_input = TextInput(background_color=(0.7, 0.7, 1, 1)) right_column.add_widget(name_input) right_column.add_widget(last_name_input) right_column.add_widget(phone_input) # Dodaj pole wyniku na dole po prawej result_label = Label(text='DANE: Imię - Nazwisko - Numer telefonu') right_column.add_widget(result_label) # Dodaj obie kolumny do głównego layoutu root.add_widget(left_column) root.add_widget(right_column) # Funkcja obsługująca przycisk "Zapisz dane" def save_data(instance): result_label.text = f'DANE: {name_input.text} - {last_name_input.text} - {phone_input.text}' # Podłącz przycisk do funkcji obsługującej zapis danych save_button = Button(text='Wyslij', background_color=(0.2, 0.7, 0.3, 1)) # Ustal zielony kolor tła przycisku save_button.bind(on_press=save_data) left_column.add_widget(save_button) # Ustaw kolory tła dla lewej kolumny (etkiet) i prawej kolumny (pola i wynik) left_column.background_color = (0.8, 0.8, 0.8, 1) right_column.background_color = (0.9, 0.9, 0.9, 1) return root if __name__ == '__main__': ContactApp().run()