Ekranı Sürüklemek

Merhabalar Ben Kenarları Kaldırıp Ekranı Sürüklemek İstiyorum Kenarlar Olmadan Herhangi bir örnek kod ile yardımcı olunur ise sevinirim şimdiden teşekkürler Tkinter üzerinde çalışıyorum Python3

Merhaba, kaydırma çubuğu kullanarak ekranı aşağı-yukarı veya sola-sağa kaydırmaktan mı bahsediyorsunuz?

Hayır mesela kenarları kaldırıp ekranı ortadan tutup başka bir konuma sürüklemek

Sorduğunuz soru bilgim dışında olduğu için size tam olarak yardımcı olabileceğimi sanmıyorum ancak sormuş olduğunuz soruyla ilgili ufak bir araştırma yaptım ve bulduğum sonuçlardan iki tanesini sizinle paylaşmak istiyorum. Acaba aşağıdaki örneklerde olduğu gibi, pencereyi ekranda sürüklemek mi istiyorsunuz yoksa daha farklı bir şey mi yapmak istiyorsunuz onu bilemedim ama siz yine de kodları inceleyebilirsiniz. Her iki örnek de çalışır durumdadır.

Örnek-1:

import tkinter

class Win(tkinter.Tk):

    def __init__(self,master=None):
        tkinter.Tk.__init__(self,master)
        self.overrideredirect(True)
        self._offsetx = 0
        self._offsety = 0
        self.bind('<Button-1>',self.clickwin)
        self.bind('<B1-Motion>',self.dragwin)

    def dragwin(self,event):
        x = self.winfo_pointerx() - self._offsetx
        y = self.winfo_pointery() - self._offsety
        self.geometry('+{x}+{y}'.format(x=x,y=y))

    def clickwin(self,event):
        self._offsetx = event.x
        self._offsety = event.y


win = Win()
win.mainloop()

Örnek-2:

import tkinter as tk

class App(tk.Tk):
    def __init__(self):
        tk.Tk.__init__(self)
        self.floater = FloatingWindow(self)

class FloatingWindow(tk.Toplevel):
    def __init__(self, *args, **kwargs):
        tk.Toplevel.__init__(self, *args, **kwargs)
        self.overrideredirect(True)

        self.label = tk.Label(self, text="Sürüklemek için sol tarafı kullanın.")
        self.grip = tk.Label(self, bitmap="gray25")
        self.grip.pack(side="left", fill="y")
        self.label.pack(side="right", fill="both", expand=True)

        self.grip.bind("<ButtonPress-1>", self.StartMove)
        self.grip.bind("<ButtonRelease-1>", self.StopMove)
        self.grip.bind("<B1-Motion>", self.OnMotion)

    def StartMove(self, event):
        self.x = event.x
        self.y = event.y

    def StopMove(self, event):
        self.x = None
        self.y = None

    def OnMotion(self, event):
        deltax = event.x - self.x
        deltay = event.y - self.y
        x = self.winfo_x() + deltax
        y = self.winfo_y() + deltay
        self.geometry("+%s+%s" % (x, y))


app = App()
app.mainloop()
2 Beğeni

Çok teşekkür ederim Yeterince Yardımcı oldunuz Teşekkürler yeniden.