PyQt5 QTreeViewの列をiniファイルで設定する

以前作成した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にあります。

コメント

タイトルとURLをコピーしました