Python 2.7 Tkinter单元位置(x,y)?

Python 2.7 Tkinter单元位置(x,y)?,python-2.7,python-3.x,tkinter,Python 2.7,Python 3.x,Tkinter,有没有办法获取单元格大小和单元格角的x,y位置?我的框架左侧有单选按钮,我想根据框架大小调整图像大小 我最后要做的是创建一个块,该块占用大量单元格,允许我放大.tif并向左/向右和向上/向下滚动。这种类型的小部件是否已经存在 这是我目前拥有的一个非常粗略的概述 from tkinter import * from PIL import Image,ImageTk import os file_path = "C:/Users/..." dirs = os.listdir(file_path)

有没有办法获取单元格大小和单元格角的x,y位置?我的框架左侧有单选按钮,我想根据框架大小调整图像大小

我最后要做的是创建一个块,该块占用大量单元格,允许我放大.tif并向左/向右和向上/向下滚动。这种类型的小部件是否已经存在

这是我目前拥有的一个非常粗略的概述

from tkinter import *
from PIL import Image,ImageTk
import os

file_path = "C:/Users/..."
dirs = os.listdir(file_path)


root = Tk()
# Set window size slightly below screen size
width = int(root.winfo_screenwidth() - root.winfo_screenwidth()/9)
height = int(root.winfo_screenheight() - root.winfo_screenheight()/9)
root.geometry(str(width)+"x"+str(height))



class Application(Frame):
    def __init__(self,master):
        Frame.__init__(self,master)
        os.chdir(file_path)
        self.grid()
        self.create_widgets()

    def create_widgets(self):
        Label(self,
            text = "Available Files"
            ).grid(row=0,column=0,sticky=W)
        Label(self,
            text = "Select one:"
            ).grid(row=1,column=0,sticky=W)

        self.filelist = StringVar()
        self.filelist.set(0)
        # Radio buttons of files in directory
        i = 1
        for files in dirs:
            if os.path.isfile(os.path.join(file_path, files)):
                i += 1
                Radiobutton(self,
                            text=files,
                            variable=self.filelist,
                            value=files,
                            command=self.update_text
                            ).grid(row=i,column=0,sticky=W)
        # Message box
        self.result = Text(self, width=40, height=5, wrap=WORD)
        self.result.grid(row=i, column=0, columnspan=3)

    def update_text(self):
        message = "File selected is "
        message += self.filelist.get()
        self.display_image()
        self.result.delete(0.0, END)
        self.result.insert(0.0, message)

    def display_image(self):
        try:
            self.image = Image.open(self.filelist.get())
        except:
            message += self.filelist.get() + " doesn't exist. This is awkward..."

        img_width,img_height = self.image.size
        self.preview_image = ImageTk.PhotoImage(self.image)
        self.preview = Label(self, image=self.preview_image)
        self.preview.grid(row=0, column=3, rowspan=20)

    app = Application(root)
    root.mainloop()

你说手机是什么意思?网格布局中的单元?或者只是任何小部件?在后一种情况下,请检查winfo,方法,例如winfo\u x是否可以提供一些代码来说明您的问题?对于cell,我的意思是使用网格布局。您的代码中至少有一个缩进问题-看起来您正在display\u image方法中创建应用程序的实例。对不起,我修复了缩进。这是一个粘贴错误。