Czy jesteś gotowy na wyzwanie w programowaniu Python? W tym zadaniu ćwiczeniowym rozszerzysz kod, którego już się nauczyłeś w ostatnim wideo. Skupisz się na tym, aby nie tylko narysować okrąg na Canvas, ale także jednocześnie przypisać mu losowy kolor za każdym razem, gdy na niego klikniesz. Przejdźmy przez poszczególne kroki i sprawdźmy, jak możesz to zrealizować.
Najważniejsze spostrzeżenia
- Dowiesz się, jak przetwarzać zdarzenia (Events) w GUI.
- Zrozumiesz, jak wykorzystywać zmienne globalne.
- Dowiesz się, jak generować liczby losowe i wykorzystać je do wyboru kolorów.
Instrukcja krok po kroku
Poniżej znajdziesz kroki, które są konieczne do wdrożenia programowania okręgu i losowej zmiany koloru.
Rozszerz kod: importuj niezbędne biblioteki
Zacznij od zaimportowania potrzebnych bibliotek. Ponieważ pracujesz z liczbami losowymi, musisz upewnić się, że importujesz moduł random, aby umożliwić generowanie losowe.

Utwórz Canvas z okręgiem
Na początku powinieneś utworzyć Canvas, na którym narysowany zostanie okrąg. Upewnij się, że jesteś zdefiniował funkcję draw_circle, która rysuje okrąg. Możesz określić początkowy kolor dla okręgu.

Kliknij na okrąg: wstaw funkcję bind
Teraz chodzi o to, aby umożliwić interakcję. Dzieje się to poprzez metodę bind, która pozwala powiązać kliknięcie na Canvas z funkcją. Nadaj nazwę funkcji, która ma być wywoływana, gdy klikniesz na Canvas.

Implementuj funkcję zmiany koloru
Teraz zdefiniuj funkcję was_clicked. Tutaj zaimplementujesz logikę, która będzie wykonywana po kliknięciu w Canvas. Potrzebujesz zmiennej globalnej, aby przechować aktualny kolor. Na początku ustawisz ją na kolor domyślny, np. zielony.
def was_clicked(event): global g_color
Tu zmienia się kolor
Generuj losowe kolory
Teraz wykorzystasz bibliotekę random, aby wybrać losowy kolor. W funkcji was_clicked możesz generować liczby całkowite, które są przypisane do różnych kategorii kolorów. Kiedy wylosujesz liczbę między 1 a 4, przypiszesz odpowiedni kolor.

Wyświetl nowy kolor w konsoli
Aby sprawdzić przebieg programu, chcesz zobaczyć, który kolor został kliknięty. W tym miejscu możesz wyświetlić nowy kolor w konsoli. Użyj funkcji Print, aby uczynić tę informację widoczną.
Aktywuj zmianę koloru w Canvas
Teraz, gdy logika zmiany koloru jest gotowa, musisz upewnić się, że funkcja draw_circle zostanie wywołana, aby narysować okrąg w nowym kolorze. Upewnij się, że ta funkcja jest wywoływana wewnątrz was_clicked.

Weryfikacja całego programu
Uruchom swój program i kliknij na okrąg na Canvas. Powinieneś zaobserwować, jak zmienia się kolor i nowy kolor wyświetla się w konsoli. Eksperymentuj, aby zobaczyć, czy wszystko działa jak należy.

Podsumowanie – programowanie w Pythonie dla początkujących: losowe kolory w Canvas
W tej instrukcji nauczyłeś się, jak wprowadzić interaktywność do swojego projektu w Pythonie, nadając Canvas możliwość reagowania na kliknięcia, a przy tym losowo zmieniając kolor narysowanego okręgu. Nauczyłeś się podstawowych technik pracy z zmiennymi globalnymi i biblioteką random. Dzięki tym umiejętnościom możesz teraz rozwijać swoje programy w Pythonie i dodawać indywidualne funkcje.
Często zadawane pytania
Jak mogę rozszerzyć funkcjonalność?Możesz dodać więcej kształtów lub zwiększyć liczbę kolorów, z których można wybierać.
Jakie są zmienne globalne?Zmienne globalne to zmienne, które są definiowane na zewnątrz funkcji i są dostępne wewnątrz funkcji.
Jak poprawnie zaimportować bibliotekę random?Użyj import random na początku swojego kodu.
Jak mogę powiększyć lub zmniejszyć okrąg?Zmodyfikuj parametry funkcji draw_circle, aby wpłynąć na rozmiar okręgu.