无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
楼主: mdyblog
打印 上一主题 下一主题

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

    [复制链接]
19201#
 楼主| 发表于 2024-5-30 12:09:27 | 只看该作者
本帖最后由 mdyblog 于 2024-5-30 12:46 编辑
泮安宁 发表于 2024-5-30 01:01
TABL和窗口一样大时水平滚动条不显示,要比窗口矮很多才能显示水平滚动条,垂直滚动条就没有这个问题

表 ...

随便给点数据就显示水平进度条。 再删掉该行
@TEAM WIN1 | EXIT
_SUB WIN1,W1080H500,,,,,,-scale:%&LOGPIXELSX% -size
    TABL  -sl:%&SL% -sc:%&SC%   TABL1,L0T0W990H300,200:1%&SC%200:2%&SC%600:3%&SC%,0,0x400
    ENVI @TABL1.val=-1
_END


点评

CHEK -scale:(50*96/12):"%DESKTOP%\445.png" CHEK1,L75T187W120H50,,, RADI -scale:(50*96/12):"%DESKTOP%\445.png" CHEK1,L75T187W120H50,,, CHEK和RADI用PNG图片的时候有白底,在黑色背景下很突兀  详情 回复 发表于 2024-7-31 10:22
不行啊,当TABL与窗口一样大时,并且TABL列宽总和大于TABL的宽,有数据水平滚动条也不显示 [attachimg]542413[/attachimg] 测试当SUB的高为500时,TABL的高为470才能看到水平滚动条 [attachimg]542414[/a  详情 回复 发表于 2024-5-30 17:06
回复

使用道具 举报

19202#
 楼主| 发表于 2024-5-30 13:00:35 | 只看该作者
PECMD2012.1.88.05.94Stable-240512GC测试.7z
回复

使用道具 举报

19203#
发表于 2024-5-30 13:26:53 | 只看该作者
mdyblog 发表于 2024-5-30 11:34
进度 %PBAR1%
MESS-top- %PBAR1%

谢谢!
回复

使用道具 举报

19204#
发表于 2024-5-30 17:06:31 | 只看该作者
本帖最后由 泮安宁 于 2024-5-30 17:17 编辑
mdyblog 发表于 2024-5-30 12:09
随便给点数据就显示水平进度条。 再删掉该行
@TEAM WIN1 | EXIT
_SUB WIN1,W1080H500,,,,,,-scale:%&LO ...

不行啊,当TABL与窗口一样大时,并且TABL列宽总和大于TABL的宽,有数据水平滚动条也不显示
测试当SUB的高为500时,TABL的高为470才能看到水平滚动条





PixPin_2024-05-30_17-16-35.png (47.81 KB, 下载次数: 15)

PixPin_2024-05-30_17-16-35.png

点评

1.窗口的标题栏你没算上吧?窗口标题栏高度+tabl 高度=窗口高度 2.给tabl 设置一个渐变度,就能将标头区分开了。 [attachimg]542426[/attachimg]  详情 回复 发表于 2024-5-30 19:47
回复

使用道具 举报

19205#
发表于 2024-5-30 17:25:11 | 只看该作者
LABE用来当按钮挺合适,但是目前按鼠标左键就执行命令了,能加一个参数:松开鼠标左键再执行命令 吗

点评

WM_LBUTTONUP左键弹起消息  详情 回复 发表于 2024-5-30 17:27
回复

使用道具 举报

19206#
发表于 2024-5-30 17:27:50 | 只看该作者
liangnijian 发表于 2024-5-30 17:25
LABE用来当按钮挺合适,但是目前按鼠标左键就执行命令了,能加一个参数:松开鼠标左键再执行命令 吗

WM_LBUTTONUP左键弹起消息

点评

LABE用不了吧,之前用SWIN写按钮,多几行命令,而且也麻烦  详情 回复 发表于 2024-5-30 17:35
回复

使用道具 举报

19207#
发表于 2024-5-30 17:35:08 | 只看该作者
泮安宁 发表于 2024-5-30 17:27
WM_LBUTTONUP左键弹起消息

LABE用不了吧,之前用SWIN写按钮,多几行命令,而且也麻烦

点评

[attachimg]542424[/attachimg]  详情 回复 发表于 2024-5-30 17:54
回复

使用道具 举报

19208#
发表于 2024-5-30 17:54:01 | 只看该作者
liangnijian 发表于 2024-5-30 17:35
LABE用不了吧,之前用SWIN写按钮,多几行命令,而且也麻烦


点评

这种要咋弄  详情 回复 发表于 2024-5-30 17:59
回复

使用道具 举报

19209#
发表于 2024-5-30 17:59:00 | 只看该作者

这种要咋弄
  1. LABE -center -vcenter ,L402T57W50H25,刷新,* CALL DISK,0xffffff#0xfa9f00#0xffffff#0xffb12a
复制代码


回复

使用道具 举报

19210#
发表于 2024-5-30 18:08:05 | 只看该作者
  1. ENVI &WM_LBUTTONUP=0x0202
  2. CALL @test
  3. _SUB test,W500H300
  4.     LABE -center -vcenter labe1,L200T57W50H25,刷新,*1 ,0xffffff#0xfa9f00#0xffffff#0xffb12a
  5.     ENVI @labe1.MSG=%&WM_LBUTTONUP%::w,l,CALL DISK
  6. _END
  7. _SUB DISK
  8.     MESS aaa
  9. _END
复制代码

点评

好的谢谢  详情 回复 发表于 2024-5-30 18:25
回复

使用道具 举报

19211#
发表于 2024-5-30 18:25:26 | 只看该作者
回复

使用道具 举报

19212#
发表于 2024-5-30 19:47:19 | 只看该作者
泮安宁 发表于 2024-5-30 17:06
不行啊,当TABL与窗口一样大时,并且TABL列宽总和大于TABL的宽,有数据水平滚动条也不显示
测试当SUB的 ...

1.窗口的标题栏你没算上吧?窗口标题栏高度+tabl 高度=窗口高度
2.给tabl 设置一个渐变度,就能将标头区分开了。

  1. ENVI$ &SL=0C  //分行
  2. ENVI$ &SC=0B  //分列
  3. ENVI$ &NL=0d 0a
  4. ENVI$ &NLa=0a
  5. ENVI$ &NL1=0a
  6. ENVI$ &TAB=09
  7. CALL @WIN1
  8. _SUB WIN1,W800H500,,,,,,-scale:%&LOGPIXELSX%
  9.     TABL -sl:%&SL% -sc:%&SC% -cksz:20 -hfont:12:**B -font:10::-50:0xFFFFFF:0.1:::::40 TABL1,L0T0W800H467,200:1%&SC%200:2%&SC%600:3%&SC%,0,0x400
  10.     ENVI @TABL1.val=-1
  11. _END
复制代码

点评

确实没算标题栏  详情 回复 发表于 2024-5-30 20:39
跑到川口外面去了。 窗口太小。 你的窗口大小,包括 边框。 刨掉边框, 窗口 不够显示的。 加个 -cisze , 所给 大小不包含 边框。 边框另算。 效果: [attachimg]542438[/attachimg]  详情 回复 发表于 2024-5-30 20:17
回复

使用道具 举报

19213#
 楼主| 发表于 2024-5-30 20:17:14 | 只看该作者
本帖最后由 mdyblog 于 2024-5-30 20:38 编辑
527104427 发表于 2024-5-30 19:47
1.窗口的标题栏你没算上吧?窗口标题栏高度+tabl 高度=窗口高度
2.给tabl 设置一个渐变度,就能将标头区 ...

跑到口外面去了。 窗口太小。
你的窗口大小,包括 边框。 刨掉边框, 窗口 不够显示的。
加个 -csize  , 所给 大小不包含 边框。 边框另算。 控件只能在客户区(-csize),边框不算。
效果:

点评

明白了  详情 回复 发表于 2024-5-30 20:40
哦,原来加上-csize就一劳永逸了  详情 回复 发表于 2024-5-30 20:23
回复

使用道具 举报

19214#
发表于 2024-5-30 20:23:00 | 只看该作者
mdyblog 发表于 2024-5-30 20:17
跑到川口外面去了。 窗口太小。
你的窗口大小,包括 边框。 刨掉边框, 窗口 不够显示的。
加个 -cisze ...

哦,原来加上-csize就一劳永逸了

点评

对的。 方便。  详情 回复 发表于 2024-5-30 20:39
回复

使用道具 举报

19215#
 楼主| 发表于 2024-5-30 20:39:11 | 只看该作者
527104427 发表于 2024-5-30 20:23
哦,原来加上-csize就一劳永逸了

对的。 方便。

点评

-csize参数,在显示比例大于等于150%时,关闭按钮下边距开始变大(测试环境是 Windows 11) 250% [attachimg]542466[/attachimg] 225% [attachimg]542465[/attachimg] 200% [attachimg]542464[/attachimg]  详情 回复 发表于 2024-5-31 11:23
回复

使用道具 举报

19216#
发表于 2024-5-30 20:39:33 | 只看该作者
527104427 发表于 2024-5-30 19:47
1.窗口的标题栏你没算上吧?窗口标题栏高度+tabl 高度=窗口高度
2.给tabl 设置一个渐变度,就能将标头区 ...

确实没算标题栏
回复

使用道具 举报

19217#
发表于 2024-5-30 20:40:07 | 只看该作者
mdyblog 发表于 2024-5-30 20:17
跑到窗口外面去了。 窗口太小。
你的窗口大小,包括 边框。 刨掉边框, 窗口 不够显示的。
...

明白了
回复

使用道具 举报

19218#
 楼主| 发表于 2024-5-30 23:28:30 | 只看该作者
最新GD版。 数据部分放一个显式字面的 空格, 会加一行再删掉该行。 这样水平滚动条 会自动显示出来。
回复

使用道具 举报

19219#
发表于 2024-5-30 23:55:51 | 只看该作者
This is great stuff.
回复

使用道具 举报

19220#
发表于 2024-5-31 09:25:28 | 只看该作者
楼主威武
回复

使用道具 举报

19221#
发表于 2024-5-31 11:23:52 | 只看该作者
本帖最后由 Anson4 于 2024-5-31 11:25 编辑

-csize参数,在显示比例大于等于150%时,关闭按钮下边距开始变大(测试环境是 Windows 11)。
_TEST_SCALE_CSIZE.zip (1.71 KB, 下载次数: 5)
250%

225%

200%

175%

150%

125%

100%

回复

使用道具 举报

19222#
发表于 2024-5-31 15:26:38 | 只看该作者
  1. `ENVI -mode EnviMode=1
  2. ENVI A1=123456
  3. ENVI N=1
  4. ENVI B=%A%N%%
  5. MESS %B%
复制代码
想实现数组下标相似的功能,请教大家一个问题,上述代码怎么在EnviMode=1的时候也有效,要怎么写,就是等号后面的变量要解释两次就对了,是不是要用“~”符号

点评

还有一种 SET~ B=A%N% 右边 当做变了名  详情 回复 发表于 2024-5-31 20:10
回复

使用道具 举报

19223#
发表于 2024-5-31 15:51:03 | 只看该作者
本帖最后由 红毛樱木 于 2024-5-31 15:52 编辑
hhh333 发表于 2024-5-31 15:26
想实现数组下标相似的功能,请教大家一个问题,上述代码怎么在EnviMode=1的时候也有效,要怎么写,就是等号 ...
  1. ENVI^ EnviMode=1
  2. ENVI A1=123456
  3. ENVI N=1
  4. ^ENVI B=%%A%N%%%
  5. MESS %B%
复制代码

A%N%当做变量处理,先^解释一下
回复

使用道具 举报

19224#
 楼主| 发表于 2024-5-31 20:10:17 | 只看该作者
hhh333 发表于 2024-5-31 15:26
想实现数组下标相似的功能,请教大家一个问题,上述代码怎么在EnviMode=1的时候也有效,要怎么写,就是等号 ...

还有一种
ENVI~    B=A%N%
右边 当做 变量名
回复

使用道具 举报

19225#
发表于 2024-6-1 05:49:14 来自手机 | 只看该作者
本帖最后由 hhh333 于 2024-6-1 05:55 编辑

怎么用sed去除字符串从右边开始的第一个回车换行符?看说明似乎有,但不知如何用

点评

还可以 RPOS* ENVI^ EnviMode=1 SET$ &NL=0d 0a SET &v1=111%&NL%222%&NL%333 RPOS* &&i=%&NL%,1,%&v1% IFEX #%i%  详情 回复 发表于 2024-6-1 12:13
MS(DOS/WIN) 的回车换行符是 2个 字符 0x0d 0x0a SET$ &NL=0d 0a SET &v1=111%&NL%222%&NL%333 SED &v2=,%&NL%,,%&v1% MESS. v1[%&NL%%&v1%]%&NL% v2[%&NL%%&v2%]%&NL% [%&v2?short:~3%] -----------  详情 回复 发表于 2024-6-1 11:02
\n 表示换行 SED A=1,\n,,%A%  详情 回复 发表于 2024-6-1 09:06
回复

使用道具 举报

19226#
发表于 2024-6-1 09:06:24 | 只看该作者
hhh333 发表于 2024-6-1 05:49
怎么用sed去除字符串从右边开始的第一个回车换行符?看说明似乎有,但不知如何用

\n 表示换行
SED A=1,\n,,%A%

点评

这个是从左边开始的  详情 回复 发表于 2024-6-1 09:09
回复

使用道具 举报

19227#
发表于 2024-6-1 09:09:52 | 只看该作者
liangnijian 发表于 2024-6-1 09:06
\n 表示换行
SED A=1,\n,,%A%

这个是从左边开始的

点评

SED A;/=1,\n,,%A%  详情 回复 发表于 2024-6-1 09:15
回复

使用道具 举报

19228#
发表于 2024-6-1 09:15:57 | 只看该作者
hhh333 发表于 2024-6-1 09:09
这个是从左边开始的

SED A;/=1,\n,,%A%
回复

使用道具 举报

19229#
发表于 2024-6-1 09:40:37 | 只看该作者
还是不对
  1. ENVI A=AAAAA%nl%
  2. ENVI B=BBBBB
  3. ENVI C=%A%%B%%A%%B%
  4. SED D;/=1,%nl%,,%C%
  5. MESS %C%%nl%%nl%%D%
复制代码

点评

那就试试跳数吧,也许是要程序输出的换行才能替换  详情 回复 发表于 2024-6-1 10:00
回复

使用道具 举报

19230#
发表于 2024-6-1 10:00:29 | 只看该作者

那就试试跳数吧,也许是要程序输出的换行才能替换
  1. EXEC* A=!cmd /c echo AAA&echo BBB&echo CCC
  2. SED B=1:2,\n,,%A%
  3. MESS %A%\n%B%
复制代码

回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-9-21 15:28

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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