SOUI官方论坛

 找回密码
 立即注册
查看: 1047|回复: 6

SlistCtrl通过临时Edit实现单元格的编辑及只读

  [复制链接]
  • TA的每日心情
    开心
    前天 18:36
  • 签到天数: 940 天

    [LV.10]以坛为家III

    580

    主题

    1340

    帖子

    2万

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    28735
    发表于 2021-3-27 18:21:42 | 显示全部楼层 |阅读模式
    录制_2021_03_27_18_01_14_421.gif

    游客,如果您要查看本帖隐藏内容请回复


    目的是模仿Excel,能从单元格中复制数据,代码只是模仿效果,临时Edit的释放目前有问题,请注意


    【论坛管理员】小白 2021-03-26 16:23:42
    一个控件,如何响应Ctrl+C实现复制功能呢?

    【论坛管理员】小白 2021-03-26 16:24:23
    比如说一个SStatic,如何Ctrl+C复制文字?

    【SOUI作者】启程软件 2021-03-26 16:24:35
    首先这个控件要有焦点。

    【SOUI作者】启程软件 2021-03-26 16:24:48
    有了焦点才能响应键盘事件。

    【论坛管理员】小白 2021-03-26 16:25:08
    需要特别写什么消息吗?

    【SOUI作者】启程软件 2021-03-26 16:25:32
    给text+msgtransparent=0

    【SOUI作者】启程软件 2021-03-26 16:25:43
    再处理wm_keydown

    【SOUI作者】启程软件 2021-03-26 16:25:52
    响应ctrl+c

    【论坛管理员】小白 2021-03-26 16:26:24
    好的,我先写个demo试试
    QQ图片20210327181938.jpg

    【论坛管理员】小白 2021-03-26 17:39:05
    [img]file:///D:\我的文档\Documents\QQ\651864346\Image\Group2\[G\%{\[G%{M1H7V4[UTO7~]EK04DK.jpg[/img]
    想复制列表中的文字,都得靠上面的方式来实现吗?还是说自己加右键菜单?

    【最强吃货】茂德公 2021-03-26 17:39:57
    你创建的时候 注册一个 keydown消息 不就可以了?

    【论坛管理员】小白 2021-03-26 17:44:22
    能复制后,体验也不是最优的,若能手动选择,比如“鲁大师”三个字,能自由选择“大师”并复制就好了

    【SOUI作者】启程软件 2021-03-26 17:44:45
    你用edit控件就好了。

    【最强吃货】茂德公 2021-03-26 17:45:23
    也不用edit, 你点  就在相应位置  创建一个 edit 并把属性copy来

    【最强吃货】茂德公 2021-03-26 17:45:42
    盖住 原来的就好

    【论坛管理员】小白 2021-03-26 17:45:50
    然后把edit设置成只读?

    【最强吃货】茂德公 2021-03-26 17:45:59
    看你需求

    【论坛管理员】小白 2021-03-26 17:46:09
    那好,这样感觉还好些

    【SOUI作者】启程软件 2021-03-26 17:47:08
    3.0的edit还有隐藏光标的功能。

    【最强吃货】茂德公 2021-03-26 17:47:55
    两种写法:
    1. 利用soui的容器树, 鼠标按下时, 遍历查询当前顶层是哪个控件
    2. 这个比较简单, 创建的时候就绑定一个 keydown事件, 点哪个就在哪个创建

    【最强吃货】茂德公 2021-03-26 17:48:56
    第一个用 GetWindow( 具体啥忘了, 我记得有个 Next属性 )

    【论坛管理员】小白 2021-03-26 17:49:08
    好的,我先用edit的方式来实现

    【论坛管理员】小白 2021-03-26 17:49:21
    getParent吧

    【最强吃货】茂德公 2021-03-26 17:49:43
    不是 parent , 是 NextWindow  First 之类的,  你问群主

    【最强吃货】茂德公 2021-03-26 17:50:01
    就是递归查询 当前控件所有的子控件

    【SOUI作者】启程软件 2021-03-26 17:50:19
    听我的,直接用edit就好了。

    【最强吃货】茂德公 2021-03-26 17:50:21
    然后GetClientWIndow().PtInRect( pt )

    【SOUI作者】启程软件 2021-03-26 17:50:30
    没那么套路。

    【最强吃货】茂德公 2021-03-26 17:50:33
    或者你直接听黄老板的

    【论坛管理员】小白 2021-03-26 17:51:32
    那就用edit吧

    【最强吃货】茂德公 2021-03-26 17:53:32
    edit 的问题是 处理两次 光标事件

    没激活移动到时, 激活按下时的状态切换, 鼠标移动走时




  • TA的每日心情
    开心
    前天 18:36
  • 签到天数: 940 天

    [LV.10]以坛为家III

    580

    主题

    1340

    帖子

    2万

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    28735
     楼主| 发表于 2021-3-27 18:23:44 | 显示全部楼层
    SRichEdit的光标是支持闪动的,等下看看如何实现闪动的
  • TA的每日心情

    2021-6-7 13:30
  • 签到天数: 1 天

    [LV.1]初来乍到

    0

    主题

    14

    帖子

    53

    积分

    24:00金丹期

    Rank: 2

    积分
    53
    发表于 2021-6-25 06:31:20 | 显示全部楼层
    666666666666666666666
  • TA的每日心情

    2023-12-11 09:55
  • 签到天数: 47 天

    [LV.5]常住居民I

    5

    主题

    44

    帖子

    308

    积分

    02:00元婴期

    Rank: 3Rank: 3

    积分
    308
    发表于 2021-6-28 17:17:01 | 显示全部楼层
    学习学习,学习学习学习

    该用户从未签到

    2

    主题

    10

    帖子

    63

    积分

    24:00金丹期

    Rank: 2

    积分
    63
    发表于 2021-6-29 19:59:34 | 显示全部楼层

    学习学习,学习学习学习
  • TA的每日心情

    2022-12-10 18:56
  • 签到天数: 2 天

    [LV.1]初来乍到

    0

    主题

    5

    帖子

    83

    积分

    24:00金丹期

    Rank: 2

    积分
    83
    发表于 2022-5-18 16:11:10 | 显示全部楼层
    SlistCtrl通过临时Edit实现单元格的编辑及只读

    该用户从未签到

    0

    主题

    4

    帖子

    37

    积分

    22:00筑基期

    Rank: 1

    积分
    37
    发表于 2022-5-19 19:09:44 | 显示全部楼层
    学习学习
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    QQ|Archiver|手机版|小黑屋|SOUI官方论坛

    GMT+8, 2024-4-24 19:56

    Powered by Discuz! X3.4

    Copyright © 2001-2021, Tencent Cloud.

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