前提・実現したいこと
ノートブックにツリービューを配置して縦横のスクロールバーを配置したい
のですが、ツリービューに表示するカラムの幅が広すぎると縦スクロールバー
が表示されません
ちなみにカラム幅をノートブックの定義幅に収まるようにすれば表示されました
表示項目が多いため、画面からはみ出るカラムが存在するのですが、この状態でも
縦横のスクロールが評されるようにするにはどうすればいいでしょうか?
該当のソースコード
python
1 # 作業用ノートブック 2 self.NB = TTK.Notebook(FMB, width=350 , height= 300) 3 4 # タブの作成 5 self.FM_NB1 = TK.Frame(self.NB) 6 self.FM_NB2 = TK.Frame(self.NB) 7 self.NB.add(self.FM_NB1, text='現作業', padding=5) 8 self.NB.add(self.FM_NB2, text='作業一覧', padding=5) 9 self.NB.pack(side = TK.TOP,expand=1, fill='both',padx=10,pady=10) 10 11 # 作業オーダフレーム 12 self.TV_O = TTK.Treeview(self.FM_NB1,height=10) 13 14 # 列インデックスの作成 15 self.TV_O["columns"] = (1,2,3,4,5,6,7,8) 16 17 # 表スタイルの設定 18 self.TV_O["show"] = "headings" 19 20 # 各列の設定(インデックス,オプション(今回は幅を指定)) 21 self.TV_O.column(1,width=120,stretch=False) 22 self.TV_O.column(2,width=60,stretch=False) 23 self.TV_O.column(3,width=40,stretch=False) 24 self.TV_O.column(4,width=100,stretch=False) 25 self.TV_O.column(5,width=60,stretch=False) 26 self.TV_O.column(6,width=60,stretch=False) 27 self.TV_O.column(7,width=60,stretch=False) 28 self.TV_O.column(8,width=60,stretch=False) 29 30 # 各列のヘッダー設定(インデックス,テキスト) 31 self.TV_O.heading(1,text="KEY") 32 self.TV_O.heading(2,text="状態") 33 self.TV_O.heading(3,text="目標") 34 self.TV_O.heading(4,text="バーコード") 35 self.TV_O.heading(5,text="オーダ") 36 self.TV_O.heading(6,text="アイテム") 37 self.TV_O.heading(7,text="品番") 38 self.TV_O.heading(8,text="個数") 39 40 # ツリービューの配置 41 self.TV_O.grid(row=0,column=0,padx=10,pady=3,sticky=TK.W + TK.E + TK.N + TK.S) 42 43 # 縦スクロールバーの配置 44 self.SCRLBAR_Y = TTK.Scrollbar(self.FM_NB1,orient=TK.VERTICAL,command=self.TV_O.yview) 45 self.TV_O.configure(yscroll=self.SCRLBAR_Y.set) 46 self.SCRLBAR_Y.grid(row=0,column=1,sticky=TK.N + TK.S) 47 48 # 横スクロールバーの配置 49 self.SCRLBAR_X = TTK.Scrollbar(self.FM_NB1,orient=TK.HORIZONTAL,command=self.TV_O.xview) 50 self.TV_O.configure(xscroll=self.SCRLBAR_X.set) 51 self.SCRLBAR_X.grid(row=1,column=0,sticky=TK.W + TK.E)
試したこと
上記コードでは、横スクロールバーは表示はされますが非アクティブな
状態なのでグリッド配置が表示範囲を超えてしまっているのかと思ってます
ちなみに、縦スクロールを無視して、パックで上から配置した場合は
同じカラム幅の条件でアクティブなスクロールバーが表示されました
補足情報(FW/ツールのバージョンなど)
python:3.6.5
tkinter:8.6
開発環境はWin10
IDEはvisual studio codeを使っています

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。