无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
楼主: mdyblog
打印 上一主题 下一主题

[更新376#2825]PECMD2012.1.80.13_Win32_64.多窗口多线程.裸机系统2.3.3.1+18M酷M...

    [复制链接]
18601#
发表于 2023-6-10 12:47:11 | 只看该作者
红毛樱木 发表于 2023-6-10 02:49
搞按钮对应显示、隐藏swin
  1. WIN1
  2. _SUB WIN1,W600H500,新窗口1,
  3.     SWIN swin1:page1:a,L0T0W600H400,,0x180
  4.     ENVI @a.visable=0
  5.     SWIN swin2:page2:b,L0T0W600H400,,0x180   
  6.     ENVI @b.visable=1
  7.     ITEM ITEM0,L289T418W60H30,切换,TEAM ENVI @a.visable=1|ENVI @b.visable=0,
  8. _END
  9. _SUB page1,W600H400,
  10.     ITEM ITEM1,L215T98W60H30,ITEM1,MESS 1
  11. _END
  12. _SUB page2,W600H400,
  13.     ENVI @this.bkcolor=0x000000
  14.     ITEM ITEM2,L215T125W60H30,ITEM2,MESS 2
  15. _END
复制代码
这个早就试过不管用才想着用tabs大佬看看我哪里写的不对

点评

第二种格式比较省事的。  详情 回复 发表于 2023-6-10 20:35
回复

使用道具 举报

18602#
发表于 2023-6-10 20:35:41 | 只看该作者
泮安宁 发表于 2023-6-10 12:47
这个早就试过不管用才想着用tabs大佬看看我哪里写的不对
  1. CALL @WIN1
  2. _SUB WIN1,W600H500,新窗口1,
  3.     SWIN -:page1:,L0T0W600H400,,0x180
  4.     ENVI @a.visable=0
  5.     SWIN -:page2:,L0T0W600H400,,0x190   
  6.     ENVI @b.visable=1
  7.     ITEM ,L189T418W60H30,显示page1,TEAM ENVI @page1.visable=1| ENVI @page2.visable=0,
  8.     ITEM ,L289T418W60H30,显示page2,TEAM ENVI @page1.visable=0| ENVI @page2.visable=1,
  9. _END
  10. _SUB page1,W600H400,
  11.     ITEM ITEM1,L215T98W60H30,ITEM1,MESS 1
  12. _END
  13. _SUB page2,W600H400,
  14.     ENVI @this.bkcolor=0x000000
  15.     ITEM ITEM2,L215T125W60H30,ITEM2,MESS 2
  16. _END
复制代码


第二种格式比较省事的。

点评

这个格式和我写的那种格式子窗口控件层级一样吗,不一样的话代码要大改了  详情 回复 发表于 2023-6-10 20:43
回复

使用道具 举报

18603#
发表于 2023-6-10 20:43:55 | 只看该作者
本帖最后由 泮安宁 于 2023-6-10 21:01 编辑
红毛樱木 发表于 2023-6-10 20:35
第二种格式比较省事的。

这个格式和我写的那种格式子窗口控件层级一样吗,不一样的话代码要大改了这种格式没有画框名,画框id怎么获取

点评

那就按你的写,visible不是visable  详情 回复 发表于 2023-6-11 01:52
回复

使用道具 举报

18604#
发表于 2023-6-11 01:52:23 | 只看该作者
泮安宁 发表于 2023-6-10 20:43
这个格式和我写的那种格式子窗口控件层级一样吗,不一样的话代码要大改了这种格式没有画框名, ...
  1. CALL @WIN1
  2. _SUB WIN1,W600H500,新窗口1,
  3.     SWIN swin1:page1:a,L0T0W600H400,,0x180
  4.     ENVI @a.visible=0
  5.     SWIN swin2:page2:b,L0T0W600H400,,0x180   
  6.     ENVI @b.visible=1
  7.     ITEM ITEM0,L289T418W60H30,切换,TEAM ENVI @a.visible=1| ENVI @b.visible=0,
  8. _END
  9. _SUB page1,W600H400,
  10.     ITEM ITEM1,L215T98W60H30,ITEM1,MESS 1
  11. _END
  12. _SUB page2,W600H400,
  13.     ENVI @this.bkcolor=0x000000
  14.     ITEM ITEM2,L215T125W60H30,ITEM2,MESS 2
  15. _END
复制代码


那就按你的写,visible不是visable

点评

说明书里备注的,第一种格式是“//画中画” 在你这里a和b不是SWIN的主窗口。参考示例代码中的:SWIN穿透操作.wcs --------------------------------------- 好像ENVI @b:swin2.Visible=0这样直接操作不行,看  详情 回复 发表于 2023-6-11 15:34
没注意到写错了,我一直都用的旧版pecmd(PECMD2012.1.88.05.94Stable-220728U测试.7z),这个格式一直不行,你写的那个格式可以,今天换了最新版,格式一也可以了应该是个bug  详情 回复 发表于 2023-6-11 02:58
回复

使用道具 举报

18605#
发表于 2023-6-11 02:58:25 | 只看该作者
本帖最后由 泮安宁 于 2023-6-11 03:08 编辑
红毛樱木 发表于 2023-6-11 01:52
那就按你的写,visible不是visable

没注意到写错了,我一直都用的旧版pecmd(PECMD2012.1.88.05.94Stable-220728U测试.7z),这个格式一直不行,你写的那个格式可以,今天换了最新版,格式一也可以了应该是个bug
--------------------------------------
最新版也有问题,背景色可以显示出来了,但切换后按钮不能点
要不还是用你写的那个格式吧,响应滚动条的示例要怎么改成格式2
  1. SWIN SWIN1:Page11:-SWINMAIN,L42T30W194H500,,0x40
  2. ENVI @SWINMAIN:SWIN1.ID=?&Swin1_Wid   //画框ID
  3. ENVI @SWINMAIN.ID=?&SWINMAIN_Wid    //与Page11窗口ID相同%&Page1_WID%
复制代码




回复

使用道具 举报

18606#
发表于 2023-6-11 15:34:15 | 只看该作者
本帖最后由 红毛樱木 于 2023-6-11 15:35 编辑
红毛樱木 发表于 2023-6-11 01:52
那就按你的写,visible不是visable
  1. CALL @WIN1
  2. _SUB WIN1,W600H500,新窗口1,
  3.     SWIN swin1:page1:a,L0T0W600H400,,0x180
  4.     ENVI @a:swin1.ID=?&swin1_Wid
  5.     ENVI @@Visible=%&swin1_Wid%:0
  6.     SWIN swin2:page2:b,L0T0W600H400,,0x180
  7.     ENVI @b:swin2.ID=?&swin2_Wid
  8.     ITEM ITEM0,L289T418W60H30,切换,TEAM ENVI @@Visible=%&swin2_Wid%:0| ENVI @@Visible=%&swin1_Wid%:1
  9. _END
  10. _SUB page1,W600H400,
  11.     ITEM ITEM1,L215T98W60H30,ITEM1,MESS 1
  12. _END
  13. _SUB page2,W600H400,
  14.     ENVI @this.bkcolor=0x000000
  15.     ITEM ITEM2,L215T125W60H30,ITEM2,MESS 2
  16. _END
复制代码


说明书里备注的,第一种格式是“//画中画”
在你这里a和b不是SWIN的主窗口。参考示例代码中的:SWIN穿透操作.wcs
---------------------------------------
好像ENVI @b:swin2.Visible=0这样直接操作不行,看样子还需要M大处理一下这种格式。

点评

谢谢,这次可以了  详情 回复 发表于 2023-6-11 17:14
回复

使用道具 举报

18607#
发表于 2023-6-11 16:08:33 来自手机 | 只看该作者
谢谢分享
回复

使用道具 举报

18608#
发表于 2023-6-11 17:14:42 | 只看该作者
红毛樱木 发表于 2023-6-11 15:34
说明书里备注的,第一种格式是“//画中画”
在你这里a和b不是SWIN的主窗口。参考示例代码中的:SWIN ...

谢谢,这次可以了
回复

使用道具 举报

18609#
发表于 2023-6-12 08:05:36 | 只看该作者
回复

使用道具 举报

18610#
发表于 2023-6-12 20:55:38 | 只看该作者
整理一下 18536 楼反馈的问题:
PECMD2012.1.88.05.94Stable-230422 版本,对于某些磁盘的0x07分区被手动改成0x42之后,用下面的指令获取不到信息,返回的%error%值是1。
指令如下: PART list part 1,&DiskInfo,指令返回的结果是空的,磁盘的分区信息如下图。
而用不支持动态磁盘的  PECMD_2012.1.88.05.94_Stable-220728W  版本则正常识别分区。

点评

PECMD==========Anson4.7z PART -gui [attachimg]541856[/attachimg]  详情 回复 发表于 2024-5-20 12:08
这人真狡猾。 改成0x42 迷惑人。  详情 回复 发表于 2024-5-19 17:27
0x42是动态磁盘吧?这个好像就不规范,可能需要特殊处理。  详情 回复 发表于 2023-6-13 01:55
回复

使用道具 举报

18611#
发表于 2023-6-13 01:55:53 来自手机 | 只看该作者
Anson4 发表于 2023-6-12 20:55
整理一下 18536 楼反馈的问题:
PECMD2012.1.88.05.94Stable-230422 版本,对于某些磁盘的0x07分区被手动 ...

0x42是动态磁盘吧?这个好像就不规范,可能需要特殊处理。

点评

这种情形,如果是识别不了该分区,好像问题也还不算大,可是整块硬盘的分区都识别不了,这样误会很大。  详情 回复 发表于 2023-6-13 11:16
回复

使用道具 举报

18612#
发表于 2023-6-13 11:16:28 | 只看该作者
红毛樱木 发表于 2023-6-13 01:55
0x42是动态磁盘吧?这个好像就不规范,可能需要特殊处理。

这种情形,如果是识别不了该分区,好像问题也还不算大,可结果是整块硬盘的分区都识别不了,误会很大。
回复

使用道具 举报

18613#
发表于 2023-6-13 21:49:01 来自手机 | 只看该作者
M大很少来了,估计不久后就会迎来终结版本。

点评

生活大于一切  详情 回复 发表于 2023-6-13 23:19
回复

使用道具 举报

18614#
发表于 2023-6-13 23:19:59 来自手机 | 只看该作者
conlin888 发表于 2023-6-13 21:49
M大很少来了,估计不久后就会迎来终结版本。

生活大于一切
回复

使用道具 举报

18615#
发表于 2023-6-15 14:07:03 | 只看该作者
EDIT更新显示.wcs
EDIT加上 -vcenter,使用拖入文件名就不会更新显示了,应该是个bug吧
回复

使用道具 举报

18616#
发表于 2023-6-18 19:03:14 | 只看该作者
各位大佬,动态创建的按钮,如何才能知道点击了哪一个按钮呢,并能获取到点击按钮的文本
简单代码如下

_SUB WIN2,W500H100,新窗口2,,,
    SCRN &ScrW,&ScrH
    ENVI &&ItemStr=第一个|第二个|第三个|第四个|第五个|第六个|第七个|第八个|第九个
    SED &ItemStr=0,|,\r\n,%&ItemStr%
    ENVI &&ItemL=0
    ENVI &&WinW=0
    ENVI &&WinH=100
    ENVI &&行数=0
    ENVI &&次数=0
    FORX *NL &ItemStr,&&ItemStrLen,
    {
        CALC #&临时行数=%&次数%/4
        FIND $%&临时行数%>%&行数%,TEAM ENVI &行数=%&临时行数%|ENVI &ItemL=0|CALC  &WinH=%&WinH%+120
        CALC &ItemT=%&行数%*120                    
        ITEM  ITEM%&次数%,L%&ItemL%T%&ItemT%W150H100,%&ItemStrLen%,,
        CALC &WinWTEMP=%&ItemL%+150         
        FIND $%&WinWTEMP%>%&WinW%,ENVI &WinW=%&WinWTEMP%  
        CALC #&WinT=(%&ScrH%-%&WinH%)/2   
        CALC #&WinL=(%&ScrW%-%&WinW%)/2
        ENVI @this.POS=%&WinL%:%&WinT%:%&WinW%:%&WinH%        
        CALC &ItemL=%&ItemL%+170      
        CALC &次数=%&次数%+1
    }   
   
_END

点评

这个地方,为啥不直接用换行符。SET$ NL=0d 0a ENVI &&ItemStr=第一个%&NL%第二个%&NL%第三个%&NL%第四个%&NL%第五个%&NL%第六个%&NL%第七个%&NL%第八个%&NL%第九个  详情 回复 发表于 2023-6-20 14:51
item前加上^先解释一遍  详情 回复 发表于 2023-6-18 21:51
回复

使用道具 举报

18617#
发表于 2023-6-18 21:51:17 | 只看该作者
jony 发表于 2023-6-18 19:03
各位大佬,动态创建的按钮,如何才能知道点击了哪一个按钮呢,并能获取到点击按钮的文本
简单代码如下

item前加上^先解释一遍
回复

使用道具 举报

18618#
发表于 2023-6-19 07:41:29 来自手机 | 只看该作者
泮安宁 发表于 2023-6-18 21:51
item前加上^先解释一遍

大佬,要实现点击某个按钮能获取到这个按钮的文本,帮改造下,谢谢

点评

CALL @WIN2 _SUB WIN2,W500H100,新窗口2,,, SCRN &ScrW,&ScrH ENVI &&ItemStr=第一个|第二个|第三个|第四个|第五个|第六个|第七个|第八个|第九个 SED &ItemStr=0,|,\r\n,%&ItemStr% ENVI &&Ite  详情 回复 发表于 2023-6-19 12:40
回复

使用道具 举报

18619#
发表于 2023-6-19 12:40:35 | 只看该作者
jony 发表于 2023-6-19 07:41
大佬,要实现点击某个按钮能获取到这个按钮的文本,帮改造下,谢谢

CALL @WIN2
_SUB WIN2,W500H100,新窗口2,,,
    SCRN &ScrW,&ScrH
    ENVI &&ItemStr=第一个|第二个|第三个|第四个|第五个|第六个|第七个|第八个|第九个
    SED &ItemStr=0,|,\r\n,%&ItemStr%
    ENVI &&ItemL=0
    ENVI &&WinW=0
    ENVI &&WinH=100
    ENVI &&行数=0
    ENVI &&次数=0
    FORX *NL &ItemStr,&&ItemStrLen,
    {
        CALC #&临时行数=%&次数%/4
        FIND $%&临时行数%>%&行数%,TEAM ENVI &行数=%&临时行数%|ENVI &ItemL=0|CALC  &WinH=%&WinH%+120
        CALC &ItemT=%&行数%*120                    
        ^ITEM  ITEM%&次数%,L%&ItemL%T%&ItemT%W150H100,%&ItemStrLen%,MESS %ITEM%&次数%%,
        CALC &WinWTEMP=%&ItemL%+150         
        FIND $%&WinWTEMP%>%&WinW%,ENVI &WinW=%&WinWTEMP%  
        CALC #&WinT=(%&ScrH%-%&WinH%)/2   
        CALC #&WinL=(%&ScrW%-%&WinW%)/2
        ENVI @this.POS=%&WinL%:%&WinT%:%&WinW%:%&WinH%        
        CALC &ItemL=%&ItemL%+170      
        CALC &次数=%&次数%+1
    }   

_END

回复

使用道具 举报

18620#
发表于 2023-6-20 14:51:27 | 只看该作者
本帖最后由 红毛樱木 于 2023-6-23 21:04 编辑
jony 发表于 2023-6-18 19:03
各位大佬,动态创建的按钮,如何才能知道点击了哪一个按钮呢,并能获取到点击按钮的文本
简单代码如下
  1. ENVI &&ItemStr=第一个|第二个|第三个|第四个|第五个|第六个|第七个|第八个|第九个
  2. SED &ItemStr=0,|,\r\n,%&ItemStr%
复制代码
这个地方,为啥不直接用换行符。
  1. SET$ NL=0d 0a
  2. ENVI &&ItemStr=第一个%&NL%第二个%&NL%第三个%&NL%第四个%&NL%第五个%&NL%第六个%&NL%第七个%&NL%第八个%&NL%第九个
复制代码

--------------------------
另外:
数值比较一般用
FIND |

IFEX $

回复

使用道具 举报

18621#
发表于 2023-6-23 10:10:45 | 只看该作者
  1. M大能不能加入
  2. forx*d forx*r 如同cmd中的for /d和for /r
  3. 因为如果使用 forx /s 会含隐藏文件 而根据帮助也没找到过滤隐藏文件的方法
  4. 只能用dir i /s/a-h 再使用FORX*NL i,j这样过滤很不nice
复制代码
回复

使用道具 举报

18622#
发表于 2023-6-27 13:53:18 来自手机 | 只看该作者
谢谢分享
回复

使用道具 举报

18623#
发表于 2023-6-27 23:43:43 | 只看该作者
感谢分享
回复

使用道具 举报

18624#
发表于 2023-6-28 11:47:24 | 只看该作者
赞一个!
回复

使用道具 举报

18625#
发表于 2023-7-11 11:16:22 | 只看该作者
TABS属性页怎么动态添加删除

点评

上面就有我问的红毛的,用swin吧  详情 回复 发表于 2023-7-11 15:05
回复

使用道具 举报

18626#
发表于 2023-7-11 15:05:02 | 只看该作者
826773297 发表于 2023-7-11 11:16
TABS属性页怎么动态添加删除

上面就有我问的红毛的,用swin吧
回复

使用道具 举报

18627#
发表于 2023-7-15 10:39:45 | 只看该作者
感谢分享
回复

使用道具 举报

18628#
发表于 2023-7-18 05:45:59 | 只看该作者
试试最新版
回复

使用道具 举报

18629#
发表于 2023-7-18 05:46:24 | 只看该作者
试试试试
回复

使用道具 举报

18630#
发表于 2023-7-18 06:37:08 | 只看该作者
谢谢分享                     
回复

使用道具 举报

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

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2025-12-25 09:27

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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