728x90
반응형
import tkinter as tk
import random
def random_color(): # 랜덤 색상 생성 함수
return "#{:06x}".format(random.randint(0, 0xFFFFFF))
def create_random_circles(canvas, num_circles): # 랜덤 원 생성 함수
canvas_width = int(canvas['width'])
canvas_height = int(canvas['height'])
for _ in range(num_circles):
diameter = random.randint(10, 100)
x1 = random.randint(0, canvas_width - diameter)
y1 = random.randint(0, canvas_height - diameter)
x2 = x1 + diameter
y2 = y1 + diameter
color = random_color()
canvas.create_oval(x1, y1, x2, y2, fill=color, outline='black')
# 메인 윈도우 설정
root = tk.Tk()
root.title("Random Circles")
# 윈도우 크기 고정
root.geometry("800x600")
root.resizable(False, False)
# 캔버스 위젯 생성
canvas = tk.Canvas(root, width=800, height=600)
canvas.pack()
# 초기 랜덤 원 생성 (윈도우가 완전히 초기화된 후)
root.after(100, create_random_circles, canvas, 30)
# 애플리케이션 실행
root.mainloop()
728x90
반응형
'프로그램' 카테고리의 다른 글
[파이썬] 문제 : 튼 정수, 작은 정수 입력 받아 몫과 나머지 구하기 (0) | 2024.05.21 |
---|---|
[파이썬] 문제 : 두 수를 입력 받아 차를 출력 (0) | 2024.05.21 |
[파이썬] 문제 : 2개의 리스트를 하나의 딕셔너리로 만들기 (0) | 2024.05.19 |
[파이썬] 문제 : 리스트에서 2의 배수 또는 3의 배수 요소값 찾기 (0) | 2024.05.19 |
[파이썬] 문제 : 1부터 하나씩 증가하면서 곱하며 1000이 넘을때 수 (0) | 2024.05.19 |
댓글