目的
右サイドバーに全列のチェックボックスを並べ、表示/非表示を切り替えます。
ポイント
Panedwindow
で中央と右サイドバーに分割displaycolumns
に表示対象の列リストをセット
代表コード(チェックで displaycolumns を更新)
def _on_toggle_column(self, col: str):
new_display = [h for h in self.data_columns if self.col_vars[h].get()]
if not new_display:
self.col_vars[col].set(True) # 最低1列は必要
return
self.display_columns = new_display
self.right["displaycolumns"] = tuple(self.display_columns)
UIイメージ
- 右上に「全選択」「全解除」ボタン
- その下にチェックボックスが縦並び
前へ → 第3章
次へ → 第5章:ソート(ヘッダークリック)