Bir Class içerisinde aldığımız değeri başka bir Class içerisinde kullanma

Merhaba,

Bir zar atma programı yazmaya çalışıyorum.
İlk pencerede kullanıcıdan kaç tane zar atmak istediği bilgisini alıp(1-3 arası) ikinci açılan pencerede zar atmasını istiyorum. İlk değer kadar zar atması gerekiyor.
Classları oluşturdum fakat iki tane sorunum var çözemediğim.

1.ilk pencereden aldığım değeri ikinciye atayamıyorum.
2. ikinci pencerede zar attığım zaman sonucu ilkine yazdırıyor. kodum şu şekilde:

from tkinter import *
import tkinter as tk
import random

root = Tk()

class App:

def __init__(self, master):
    self.master = master
    self.title = Label(master, fg="blue", text="Dice Roller")
    self.nb_dices_entry = Entry(master)
    self.button1 = Button(master, text="How many dice?", command=self.open)
    self.title.grid(row=0, columnspan=2)
    self.nb_dices_entry.grid(row=1, column=1)
    self.button1.grid(row=2, column=1)

def open(self):
    self.newWindow = tk.Toplevel(self.master)
    self.App = Dice(self.newWindow)

class Dice:

def __init__(self, master):
    self.master = master
    self.title = Label(master, fg="red", text="Dice Roller")
    self.nb_dices_label = Label(master, fg="black", text="DICE :")
    self.button2 = Button(master, fg='white',bg='blue',text="Roll Dice ", command=self.game)
    self.quitbutton = Button(master, fg="white",bg='red',text='EXIT', command=master.quit)
    self.title.grid(row=0, columnspan=2)
    self.nb_dices_label.grid(row=2, sticky=E)
    self.button2.grid(row=5, column=0)
    self.quitbutton.grid(row=5, column=3)

def game(self):
    self.solution = Label(bg='green', text=random.randrange(1, 7))
    self.solution.grid()

app = App(root)
root.mainloop()

Merhaba, forumumuza hoşgeldiniz. :slight_smile:

Verdiğiniz kodu, daha düzgün görebilmemiz için için, kodunuzu şunun gibi düzenlemelisiniz:

```
print(“Bunun gibi…”)
```

Bu sayede biz, kodunuzu şu şekilde göreceğiz:

print("Bunun gibi...")

Sorularınıza gelince de:

1: Dice sınıfının __init__() metoduna bir parametre ekleyerek, bu sorunu çözebilirsiniz.

2: Widgetlerin, ilk parametsesi olan master='ı ana pencereye ayarlamışsınız.