PyQt5 QTreeViewの列をiniファイルで設定する
2020/01/31 categories:PyQt5| tags:Python|PyQt5|QTreeView|
以前作成したQTreeViewのサンプルの列をiniファイルで設定できるようにしました。
iniファイルの中身
[columns]
column0 = ID
column1 = Name
column2 = Data1
column3 = Data2
column4 = Data3
セクションはcolumnsで、オプションはcolumn + 列番号としました。
iniファイルの読み込み
MainWindowクラスのコンストラクタで下記のコードの通りにiniファイルを読み込みました。
ini_file = Path('settings.ini')
if ini_file.exists():
config = configparser.ConfigParser()
config.read(ini_file)
columns = []
for option in [ 'column'+str(i) for i in range(1000) ]:
if not config.has_option( 'columns', option ):
continue
columns.append( config.get( 'columns', option ) )
self.model.addColumns(columns)
処理は下記の通りです。
- pathlibでiniファイルが存在するか確認
- iniファイルはconfigparserで読み込み
- 読み込み対象はcolumns + i(0~999)のオプション
- columns + iのオプションが存在しなかったら読み込み完了
ソースコード
作成したコードはgithubにあります。