这段代码创建了一个带有两个ListView控件的图形用户界面(GUI),并为这些控件添加了事件处理功能。

 

; 创建GUI和两个ListView控件
Gui, Add, ListView, vListView1 hwndhListView1 gListView1_Events r10 w300, 测试ID|姓名|年龄
Gui, Add, ListView, vListView2 hwndhListView2 gListView2_Events r10 w300 y+10, 产品编号|产品名称|价格

; 添加数据到ListView1
Gui, ListView, ListView1  ; 明确指定当前操作的ListView
LV_Add("", "001", "张三", "28")
LV_Add("", "002", "李四", "35")
LV_Add("", "003", "王五", "42")

; 切换到第二个ListView并添加数据
Gui, ListView, ListView2
LV_Add("", "P001", "键盘", "199")
LV_Add("", "P002", "鼠标", "99")
LV_Add("", "P003", "显示器", "1299")

Gui, Show, w320 h500, 双ListView示例
return

; ListView1的双击事件处理器
ListView1_Events:
  if (A_GuiEvent = "DoubleClick") {  ; 双击事件
    Gui, ListView, ListView1  ; 明确指定操作ListView1
    LV_GetText(firstCol, A_EventInfo, 1)  ; 获取第一列数据
    MsgBox, 双击了ListView1的第 %A_EventInfo% 行,第一列数据: %firstCol%
  }
return

; ListView2的双击事件处理器
ListView2_Events:
  if (A_GuiEvent = "DoubleClick") {  ; 双击事件
    Gui, ListView, ListView2  ; 明确指定操作ListView2
    LV_GetText(firstCol, A_EventInfo, 1)  ; 获取第一列数据
    MsgBox, 双击了ListView2的第 %A_EventInfo% 行,第一列数据: %firstCol%
  }
return

; 右键菜单事件处理器
GuiContextMenu:
  if (A_GuiControl = "ListView1") {  ; 检查是哪个控件触发了右键菜单
    if (A_EventInfo > 0) {  ; 确保点击了有效行
      Gui, ListView, ListView1  ; 明确指定操作ListView1
      LV_GetText(secondCol, A_EventInfo, 2)  ; 获取第二列数据
      MsgBox, 右键点击了ListView1的第 %A_EventInfo% 行,第二列数据: %secondCol%
    }
  } else if (A_GuiControl = "ListView2") {  ; ListView2的右键处理
    if (A_EventInfo > 0) {  ; 确保点击了有效行
      Gui, ListView, ListView2  ; 明确指定操作ListView2
      LV_GetText(secondCol, A_EventInfo, 2)  ; 获取第二列数据
      MsgBox, 右键点击了ListView2的第 %A_EventInfo% 行,第二列数据: %secondCol%
    }
  }
return

 

声明:站内资源为整理优化好的代码上传分享与学习研究,如果是开源代码基本都会标明出处,方便大家扩展学习路径。请不要恶意搬运,破坏站长辛苦整理维护的劳动成果。本站为爱好者分享站点,所有内容不作为商业行为。如若本站上传内容侵犯了原著者的合法权益,请联系我们进行删除下架。