以下のコードは、Text()関数がtkinterのテーブルを作成するためのコードです。このウィンドウにスクロールバーを追加したいのですが、Text()にスクロールバーを追加すると、このメソッドはウィンドウをスクロールするためのものではなく、Text()内をスクロールするためのものです。テキスト作成テーブルにスクロールバーを追加する方法
この例にジオメトリを追加しませんでした。現在のジオメトリは行と列の量に依存します。しかし、固定されたジオメトリサイズが要求され、行と列の量を書き込むときに、このスクロールバーで他の行と列が表示されるはずです。
from tkinter import *
class Application:
def __init__(self):
self.window = Tk()
self.window.title("Database")
self.window.resizable(width=False, height=False)
self.frame_1 = Frame(bg="black")
self.frame_1.grid(row=0, column=0)
self.menubar = Menu(tearoff=0)
self.table()
self.menu()
self.mainloop = self.window.mainloop()
def table(self):
row = int(input("Row:"))
column = int(input("Column:"))
for i in range(row):
for j in range(column):
text = Text(self.frame_1, width=20, height=1)
text.bind("<Button-3>", self.popup)
text.grid(row=i, column=j, padx=1, pady=1)
text.configure(state="disabled")
def menu(self):
self.menubar.add_command(label="Copy", command=lambda: self.window.focus_get().event_generate('<<Copy>>'))
def popup(self, event):
self.menubar.post(event.x_root, event.y_root)
ありがとう、私は今リンクを見ています。 –
あなたが書いた投稿に従ってコードを修正しました。私はスクロールバーをx軸とy軸の両方に配置します。あなたが書いたコードは機能しています。しかし、私は行と列の量に関する別の質問をしたい。たとえば、テストによると、max row * colは18 * 18です.19 * 19と入力すると、プログラムは計算しているかのように待機します。また、100 * 3を受け取りますが、100 * 4は受け付けません。理由を知っていますか? –
@dildeolupbiten:別の質問をする場合は、「質問する」ボタンをクリックしてください。 Stackoverflowはコメントの長い会話をサポートするようには設計されていません。 –