【问题标题】:How can I make this INI file into a listview in Autohotkey如何将此 INI 文件放入 Autohotkey 中的列表视图
【发布时间】:2017-07-19 12:11:02
【问题描述】:

我想将此 INI 文件排列到列表视图中,其中 SECTION 是第一列,每个键都会创建另一列。我以为我有这个代码,但第二列显示所有键一起而不是分开。有人可以帮我将它们分成单独的列。另外我在 AHK 方面不是很先进,所以如果您可以评论标记您的步骤,将不胜感激!

#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

【问题讨论】:

    标签: loops listview autohotkey ini


    【解决方案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
    

    【讨论】:

    • 做到了!谢谢
    • 花了一段时间,但我的名声越来越大。我已经投票并检查了。
    猜你喜欢
    • 2011-03-04
    • 2017-02-21
    • 1970-01-01
    • 2021-01-17
    • 2020-08-20
    • 2013-10-20
    • 2016-11-20
    • 1970-01-01
    • 2012-05-21
    相关资源
    最近更新 更多