前提・実現したいこと
ttkのtreeviewを利用して表データの表示を行っていますが
見やすさの点から、表示されるデータの背景色を1行毎に変更
したいのですがうまくいかず困っています
該当のソースコード
python
1 def CREATE_WORKING_DGV(self,ALL_FLAG): 2 self.TREEV = TTK.Treeview(self.TB_W1) 3 4 # 列インデックスの作成 5 self.TREEV["columns"] = (1,2,3,4,5) 6 7 # 表スタイルの設定 8 self.TREEV["show"] = "headings" 9 10 # 各列の設定 11 self.TREEV.column(1,width=120,stretch=False) 12 self.TREEV.column(2,width=60,stretch=False) 13 self.TREEV.column(3,width=40,stretch=False) 14 self.TREEV.column(4,width=100,stretch=False) 15 self.TREEV.column(5,width=60,stretch=False) 16 17 # 各列のヘッダー設定 18 self.TREEV.heading(1,text="KEY") 19 self.TREEV.heading(2,text="状態") 20 self.TREEV.heading(3,text="目標") 21 self.TREEV.heading(4,text="バーコード") 22 self.TREEV.heading(5,text="オーダ") 23 24 # 値の登録 25 i=0 26 for CUR in M.INST_COMMON.LIST_ORDER_INFO: 27 ary_temp =[] 28 ary_temp.append(CUR.ORDER_KEY) 29 ary_temp.append("未着手") 30 ary_temp.append(CUR.COST) 31 ary_temp.append(CUR.BARCODE) 32 ary_temp.append(CUR.ORDER_NUMBER) 33 34 self.TREEV.insert("","end",values=ary_temp) 35 36 # tagが奇数か偶数かをビット演算で判定 37 if i & 1: 38 # tagが奇数(レコードは偶数)の場合のみ、背景色の設定 39 self.TREEV.tag_configure(i,background="#CCFFFF") 40 41 i+=1 42 43 # ツリービューの配置 44 self.TREEV.pack(expand=1,padx=5,pady=2) 45 46 # スクロールバーの配置 47 self.SCRLBAR = TTK.Scrollbar(self.TB_W1,orient=TK.HORIZONTAL,command=self.TREEV.xview) 48 self.TREEV.configure(xscroll=self.SCRLBAR.set) 49 self.SCRLBAR.pack(expand=1,fill=TK.X) 50
試したこと
デバッグ実行すると「if i & 1:」の条件は有効で、1行ごとに
「self.TREEV.tag_configure(i,background="#CCFFFF")」の
コードが実行されていることは確認しました
補足情報(FW/ツールのバージョンなど)
python:3.6.5
tkinter:8.6
開発環境はWin10
IDEはvisual studio codeを使っています
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/07/31 06:17