2017-07-19 4 views
1

このINIファイルをリストビューに配置したい場合は、SECTIONが最初のカラムで、すべてのキーが別のカラムを作成します。私はこのコードでそれを持っていると思ったが、2番目の列は分離されずにすべてのキーをまとめて表示する。誰かが私を個々の列に分ける手助けをすることができますか?また、私は非常に高度なAHKではないので、あなたの旗をコメントすることができれば、あなたのステップは非常に高く評価されるだろう!このINIファイルをAutohotkeyのリストビューにするにはどうすればいいですか?

#SingleInstance, force 
#NoEnv 

FileDelete,test.ini 
FileAppend, 
(
[PROJECT-1] 
Company=Company A 
Remarks=Info about Project 1 
Status=Current 
Value=Some Value not needed 
[PROJECT-2] 
Company=Company B 
Remarks=Info about Project 2 
Status=Late 
Values=Some Value not needed 
) 
,test.ini 


GUI, ADD, Listview, w600, PROJECT|COMPANY|REMARKS|STATUS 
IniRead, OutputVarProjects, test.ini 
; MsgBox % OutputVarProjects 

Loop, parse, OutputVarProjects, `n ;shows sections 
    { 
    LVDATA:="" 
    IniRead, OutputVarSection, test.ini, %A_LoopField% 
    ; MsgBox % OutputVarSection 
    Loop, parse, OutputVarSection, `n 
    LVDATA .= StrSplit(A_LoopField,"=").2 "," 
    ; MsgBox % LVDATA 
    LV_Add("", A_loopfield, lvdata) 
    } 
    Gui, show 
    Return 

答えて

1

キー名がどのようなものになるか分かっているので、私はそれぞれを個別に静的に読み取ることをお勧めします。セクションのキーを動的に読むことは、その行の下にその順序で表示されることを保証するものではありません。

#SingleInstance, force 
#NoEnv 

FileDelete,test.ini 
FileAppend, 
(
[PROJECT-1] 
Company=Company A 
Remarks=Info about Project 1 
Status=Current 
Value=Some Value not needed 
[PROJECT-2] 
Company=Company B 
Remarks=Info about Project 2 
Status=Late 
Values=Some Value not needed 
) 
,test.ini 


Gui, Add, Listview, w600, PROJECT|COMPANY|REMARKS|STATUS 
IniRead, projects, test.ini 
Loop, parse, projects, `n ;shows sections 
{ 
    sect := A_LoopField 
    IniRead, keys, test.ini, % sect 
    IniRead, company, test.ini, % sect, Company, %A_Space% 
    IniRead, remarks, test.ini, % sect, Remarks, %A_Space% 
    IniRead, status, test.ini, % sect, Status, %A_Space% 
    LV_Add("", sect, company, remarks, status) 
} 
Loop, % LV_GetCount("Col") 
    LV_ModifyCol(A_Index, "autoHdr") 
Gui, show 
return 

GuiClose: 
ExitApp 
+0

それでした!ありがとうございます –

+0

素晴らしい!可能であれば受け入れてください: – fischgeek

+0

しばらく時間がかかりましたが、私の評判は高まっています。私はupvotedとチェックした。 –

関連する問題