找回密码  加入

AUTOIT CN

搜索
查看: 389|回复: 11

[网络通信] 【已解决】为何无法复制左侧的图标到右侧listview里面

[复制链接]
发表于 2019-3-12 22:47:28 | 显示全部楼层 |阅读模式
本帖最后由 xyhqqaa 于 2019-3-14 15:24 编辑



求助大佬们,想实现把左侧的图标复制到右侧,但是图标一直无法复制过去~~求懂的大佬指教下!!
  1.                #include <GUIConstantsEx.au3>
  2. #include <ListViewConstants.au3>
  3. #include <WindowsConstants.au3>
  4. #include <GuiListView.au3>
  5. #include <GuiImageList.au3>
  6. #Region ### START Koda GUI section ### Form=
  7. $Form1 = GUICreate("Form1", 716, 367, 192, 124)
  8. $ListView1 = GUICtrlCreateListView("", 16, 24, 322, 334)
  9. GUICtrlSetStyle($ListView1 , $LVS_ICON)
  10. $ListView2 = GUICtrlCreateListView("", 344, 24, 370, 334)
  11. GUICtrlSetStyle($ListView2 , $LVS_ICON)

  12. $hImage = _GUIImageList_Create(16, 16, 5, 3)
  13.         _GUIImageList_AddIcon($hImage, @SystemDir & "\shell32.dll", 13)
  14.         _GUIImageList_AddIcon($hImage, @SystemDir & "\shell32.dll", 14)
  15.         _GUICtrlListView_SetImageList($ListView1, $hImage, 0)
  16.         _GUICtrlListView_SetImageList($ListView2, $hImage, 0)
  17.         ; Add columns
  18.         _GUICtrlListView_AddColumn($ListView1, "", 120)
  19.         ; Add columns
  20.         _GUICtrlListView_AddColumn($ListView2, "", 120)
  21.         ; Add items
  22.         _GUICtrlListView_AddItem($ListView1, "Row 1", 0)
  23.         _GUICtrlListView_AddItem($ListView1, "Row 2", 1)

  24. $ListView1context = GUICtrlCreateContextMenu($ListView1)
  25. $MenuItem1 = GUICtrlCreateMenuItem("右键添加到右侧", $ListView1context)
  26. GUISetState(@SW_SHOW)
  27. #EndRegion ### END Koda GUI section ###

  28. While 1
  29.         $nMsg = GUIGetMsg()
  30.         Switch $nMsg
  31.                 Case $GUI_EVENT_CLOSE
  32.                         Exit
  33.                         
  34.                         
  35.                 Case $MenuItem1
  36.                         _GUICtrlListView_CopyItems($ListView1, $ListView2)

  37.         EndSwitch
  38. WEnd



复制代码




本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?加入

x
 楼主| 发表于 2019-3-13 23:47:44 | 显示全部楼层
  没有一个回复。。。。
 楼主| 发表于 2019-3-13 23:48:45 | 显示全部楼层
那我还是想想其他方式,谢谢大家
发表于 2019-3-14 02:00:49 | 显示全部楼层
大圖標 小圖標問題  

問題出在
        _GUICtrlListView_SetImageList($ListView1, $hImage, 0)
        _GUICtrlListView_SetImageList($ListView2, $hImage, 0)

右手邊的應該是 1  小圖標才對
发表于 2019-3-14 02:02:50 | 显示全部楼层
xyhqqaa 发表于 2019-3-13 23:48
那我还是想想其他方式,谢谢大家
  1. #include <GUIConstantsEx.au3>
  2. #include <ListViewConstants.au3>
  3. #include <WindowsConstants.au3>
  4. #include <GuiListView.au3>
  5. #include <GuiImageList.au3>
  6. #Region ### START Koda GUI section ### Form=
  7. $Form1 = GUICreate("Form1", 716, 367, 192, 124)
  8. $ListView1 = GUICtrlCreateListView("", 16, 24, 322, 334)
  9. GUICtrlSetStyle($ListView1 , $LVS_ICON)
  10. $ListView2 = GUICtrlCreateListView("", 344, 24, 370, 334)
  11. GUICtrlSetStyle($ListView1 , $LVS_ICON)

  12. $hImage = _GUIImageList_Create(16, 16, 5, 3)
  13.         _GUIImageList_AddIcon($hImage, @SystemDir & "\shell32.dll", 13)
  14.         _GUIImageList_AddIcon($hImage, @SystemDir & "\shell32.dll", 14)
  15.         _GUICtrlListView_SetImageList($ListView1, $hImage, 0)
  16.         _GUICtrlListView_SetImageList($ListView2, $hImage, 1)
  17.         ; Add columns
  18.         _GUICtrlListView_AddColumn($ListView1, "", 120)
  19.         ; Add columns
  20.         _GUICtrlListView_AddColumn($ListView2, "", 120)
  21.         ; Add items
  22.         _GUICtrlListView_AddItem($ListView1, "Row 1", 0)
  23.         _GUICtrlListView_AddItem($ListView1, "Row 2", 1)

  24. $ListView1context = GUICtrlCreateContextMenu($ListView1)
  25. $MenuItem1 = GUICtrlCreateMenuItem("右?添加到右?", $ListView1context)
  26. GUISetState(@SW_SHOW)
  27. #EndRegion ### END Koda GUI section ###

  28. While 1
  29.         $nMsg = GUIGetMsg()
  30.         Switch $nMsg
  31.                 Case $GUI_EVENT_CLOSE
  32.                         Exit
  33.                         
  34.                         
  35.                 Case $MenuItem1
  36.                         _GUICtrlListView_CopyItems($ListView1, $ListView2)

  37.         EndSwitch
  38. WEnd
复制代码


评分

1

查看全部评分

 楼主| 发表于 2019-3-14 10:30:19 | 显示全部楼层

感谢大佬百忙间的回复。不过这样的效果跟我预想的实际还是有差异。之前有查看过例子,小图标可以复制过去,大图标就直接丢失。感恩~~这个我想想其他方法。感恩
发表于 2019-3-14 10:57:01 | 显示全部楼层
确定第11行不是 GUICtrlSetStyle($ListView2 , $LVS_ICON) ?
 楼主| 发表于 2019-3-14 11:56:42 | 显示全部楼层
afan 发表于 2019-3-14 10:57
确定第11行不是 GUICtrlSetStyle($ListView2 , $LVS_ICON) ?

哥,是我失误。。。。。确实是。。。。我临时修改测试。。。。失误。。。海涵~~
发表于 2019-3-14 14:14:22 | 显示全部楼层
xyhqqaa 发表于 2019-3-14 11:56
哥,是我失误。。。。。确实是。。。。我临时修改测试。。。。失误。。。海涵~~

不是海涵不海涵,改了不就ok了? 不测试下?  _ _|
 楼主| 发表于 2019-3-14 15:23:59 | 显示全部楼层
afan 发表于 2019-3-14 14:14
不是海涵不海涵,改了不就ok了? 不测试下?  _ _|

感谢afan哥。。我找到原因了。至于GUICtrlSetStyle($ListView1 , $LVS_ICON)这个,是我精简源码拷贝过来用来发论坛方便大家查看,没注意修改导致,不过这个不是影响结果的原因。不过根据您的提醒,我仔细看了下,是因为_GUICtrlListView_SetImageList($ListView2, $hImage, 0),默认小图标模式。我把他更改为大图标后就可以了。。。感恩~~是我马虎了~~不好意思。谢谢afan哥


  1. #include <GUIConstantsEx.au3>
  2. #include <ListViewConstants.au3>
  3. #include <WindowsConstants.au3>
  4. #include <GuiListView.au3>
  5. #include <GuiImageList.au3>
  6. #Region ### START Koda GUI section ### Form=
  7. $Form1 = GUICreate("Form1", 716, 367, 192, 124)
  8. $ListView1 = GUICtrlCreateListView("", 16, 24, 322, 334)
  9. GUICtrlSetStyle($ListView1 , $LVS_ICON)
  10. $ListView2 = GUICtrlCreateListView("", 344, 24, 370, 334)
  11. GUICtrlSetStyle($ListView2 , $LVS_ICON)
  12. $hImage = _GUIImageList_Create(16, 16, 5, 3)
  13.         _GUIImageList_AddIcon($hImage, @SystemDir & "\shell32.dll", 13)
  14.         _GUIImageList_AddIcon($hImage, @SystemDir & "\shell32.dll", 14)
  15.     [color=#ff0000]   [/color][color=#000000] _GUICtrlListView_SetImageList($ListView1, $hImage, 0)[/color]
  16.       [color=#ff0000] ; _GUICtrlListView_SetImageList($ListView2, $hImage, 0)[/color]
  17.       [color=#ff0000]  _GUICtrlListView_SetImageList($ListView2, $hImage, 1)[/color]
  18.         ; Add columns
  19.         _GUICtrlListView_AddColumn($ListView1, "", 120)
  20.         ; Add columns
  21.         _GUICtrlListView_AddColumn($ListView2, "", 120)
  22.         ; Add items
  23.         _GUICtrlListView_AddItem($ListView1, "Row 1", 0)
  24.         _GUICtrlListView_AddItem($ListView1, "Row 2", 0)
  25. $ListView1context = GUICtrlCreateContextMenu($ListView1)
  26. $MenuItem1 = GUICtrlCreateMenuItem("右?添加到右?", $ListView1context)
  27. GUISetState(@SW_SHOW)
  28. #EndRegion ### END Koda GUI section ###

  29. While 1
  30.         $nMsg = GUIGetMsg()
  31.         Switch $nMsg
  32.                 Case $GUI_EVENT_CLOSE
  33.                         Exit
  34.                 Case $MenuItem1
  35.                         _GUICtrlListView_CopyItems($ListView1, $ListView2)
  36.         EndSwitch
  37. WEnd

复制代码


发表于 2019-3-14 15:43:31 | 显示全部楼层

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?加入

x
 楼主| 发表于 2019-3-14 17:29:05 | 显示全部楼层

  测试成功,主要为了实现将个别模块添加到常用页面,实现方便查看~~~感谢大家。困扰了好几天,还是自己太马虎了。。感谢感谢~~~

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?加入

x
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|小黑屋|手机版|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2019-7-20 22:35 , Processed in 0.078125 second(s), 20 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表