无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
查看: 7663|回复: 44

G4D又双叒叕出bug了

[复制链接]
发表于 2019-8-10 16:54:38 | 显示全部楼层 |阅读模式
本帖最后由 dsfgamesky 于 2019-8-10 16:59 编辑

grub4dos又双叒叕又出来俩bug

第一个
setmenu --string=3=-1=0xffffff="时间:"
setmenu --string=9=-1=0xffffff="date&time=yyyy/MM/dd hh:mm:ss AP"
这样只会显示时间,不会显示"时间:"

第二个
用hotkey调用font命令调用(使用更大字体的字库,我的是20x20切换成24x24),setmenu --string的位置不能同步
而且切换成小字库时(20x20切换成16x16),位置会比原来往上
发表于 2019-8-10 19:12:07 | 显示全部楼层
第一个

我这里测试没有问题。你自己排查一下,或者把菜单贴上来,是不是其他覆盖了。
第二个

我这里测试也没有问题。
你把日期放在最后一行,字体大时会挤出去。
日期的位置没有改变。我不明白你说的“位置不能同步”是什么意思。请解释,或截图。
为了测试,把日期放到0行。
setmenu --ver-off
setmenu --string=0=0=0xffffff="时间:"
setmenu --string=6=0=0xffffff="date&time=yyyy/MM/dd hh:mm:ss AP"

点评

只有setmenu --string=0=-1=0xffffff="date&time=yyyy/MM/dd hh:mm:ss AP"这样不会消失,而其他字符串这样会消失,怪事。。  详情 回复 发表于 2019-8-10 20:44
“位置不能同步”我就是想说能不能切换字库时还是保持原来的XY坐标,不改变位置  详情 回复 发表于 2019-8-10 19:55
菜单前头是这样的  详情 回复 发表于 2019-8-10 19:44
回复

使用道具 举报

 楼主| 发表于 2019-8-10 19:44:51 | 显示全部楼层
2011yaya2007777 发表于 2019-8-10 19:12
我这里测试没有问题。你自己排查一下,或者把菜单贴上来,是不是其他覆盖了。

我这里测试也没有问题。 ...
  1. default 0
  2. timeout 5
  3. font /boot/grub/fonts/font16.hex
  4. graphicsmode -1 -1 -1 24:32
  5. color white/black black/light-gray light-blue/black white/black
  6. setmenu --keyhelp=1
  7. setmenu --auto-num-on
  8. setmenu --ver-off
  9. setmenu --lang=zh
  10. setmenu --highlight-full
  11. setmenu --middle-align
  12. setmenu --box y=5 l=0
  13. setmenu --string=3=-1=0xffffff="时间"
  14. setmenu --string=9=-1=0xffffff="date&time=yyyy/MM/dd hh:mm:ss AP"
复制代码

菜单前头是这样的
回复

使用道具 举报

 楼主| 发表于 2019-8-10 19:48:20 | 显示全部楼层
菜单setmenu Y坐标定在-0行没问题,-1行就显示不了
回复

使用道具 举报

 楼主| 发表于 2019-8-10 19:55:14 | 显示全部楼层
2011yaya2007777 发表于 2019-8-10 19:12
我这里测试没有问题。你自己排查一下,或者把菜单贴上来,是不是其他覆盖了。

我这里测试也没有问题。 ...

“位置不能同步”我就是想说能不能切换字库时还是保持原来的XY坐标,不改变位置
回复

使用道具 举报

 楼主| 发表于 2019-8-10 20:44:35 | 显示全部楼层
2011yaya2007777 发表于 2019-8-10 19:12
我这里测试没有问题。你自己排查一下,或者把菜单贴上来,是不是其他覆盖了。

我这里测试也没有问题。 ...

只有setmenu --string=0=-1=0xffffff="date&time=yyyy/MM/dd hh:mm:ss AP"这样不会消失,而其他字符串这样会消失,怪事。。
回复

使用道具 举报

发表于 2019-8-10 22:49:46 | 显示全部楼层
"时间"2个字确实是打印了,但是又被帮助信息覆盖了,尽管是什么也看不见的空格。而日期是每秒打印一次,所以可以看见。
加一句  setmenu --help=8=0=37,把帮助信息挤出去。

用hotkey调用font命令,只改变字体尺寸,没有改变原始的菜单尺寸,所以xy尺寸会变动。
你应当调用一个批处理,即改变字体尺寸的同时,也改变菜单尺寸布局。

点评

G4D批处理是.bat还是.lst?  详情 回复 发表于 2019-8-11 06:59
回复

使用道具 举报

 楼主| 发表于 2019-8-11 06:59:09 | 显示全部楼层
2011yaya2007777 发表于 2019-8-10 22:49
"时间"2个字确实是打印了,但是又被帮助信息覆盖了,尽管是什么也看不见的空格。而日期是每秒打印一次,所 ...

G4D批处理是.bat还是.lst?
回复

使用道具 举报

发表于 2019-8-11 11:32:25 | 显示全部楼层
按键帮助信息,可以通过设置参数 --keyhelp=y=color ,从菜单挤出去。
项目帮助信息,菜单始终允许显示,尽管可以没有内容。

如果不设置菜单框底部(即没有 --box h=H),默认的项目帮助信息位置,在菜单底部倒数第5行,占4行(即-1,-2,-3,-4)。你设置字符串在 -1 行,必然受影响(日期时间每秒刷新一次,它能覆盖项目帮助信息)。

如果设置菜单框底部(即有 --box h=H),项目帮助信息位置,在菜单框下面,占4行。

办法1:调整字符串位置,不要位于 -1 至 -4 行。
办法2:指定菜单框底部位置,使其高于字符串位置。比如菜单框底部位于 -7 行。

菜单框底部位置是: Y+H  (即 --box y=Y h=H)

现在通过热键,或者命令行调整字体尺寸,不影响 -0, -1 ... 指定的位置。即始终在指定的行。

grldr.rar

166.45 KB, 下载次数: 1, 下载积分: 无忧币 -2

点评

yaya大神,setmenu --string中COLOR参数的RRGGBB是不是16进制?  详情 回复 发表于 2019-8-11 14:02
yaya大,setmenu --box h=-7并没有调整按键帮助信息的位置啊。  详情 回复 发表于 2019-8-11 13:52

评分

参与人数 1无忧币 +5 收起 理由
dsfgamesky + 5 很给力!

查看全部评分

回复

使用道具 举报

 楼主| 发表于 2019-8-11 13:52:32 | 显示全部楼层
2011yaya2007777 发表于 2019-8-11 11:32
按键帮助信息,可以通过设置参数 --keyhelp=y=color ,从菜单挤出去。
项目帮助信息,菜单始终允许显示, ...

yaya大,setmenu --box h=-7并没有调整按键帮助信息的位置啊。
回复

使用道具 举报

 楼主| 发表于 2019-8-11 14:02:43 | 显示全部楼层
本帖最后由 dsfgamesky 于 2019-8-11 14:12 编辑
2011yaya2007777 发表于 2019-8-11 11:32
按键帮助信息,可以通过设置参数 --keyhelp=y=color ,从菜单挤出去。
项目帮助信息,菜单始终允许显示, ...


yaya大,能不能在setmenu --string里加上背景色RRGGBB?
回复

使用道具 举报

发表于 2019-8-11 14:37:11 来自手机 | 显示全部楼层
我在9楼说,菜单框底部位于-7行,是相对于-1行而言。你应当计算出-7行的具体值。--box

点评

原来是这样子  详情 回复 发表于 2019-8-11 14:43
回复

使用道具 举报

 楼主| 发表于 2019-8-11 14:43:03 | 显示全部楼层
2011yaya2007777 发表于 2019-8-11 14:37
我在9楼说,菜单框底部位于-7行,是相对于-1行而言。你应当计算出-7行的具体值。--box

原来是这样子
回复

使用道具 举报

发表于 2019-8-11 14:46:45 来自手机 | 显示全部楼层
不能使用负值。比如,高600,除以16,得37。行号是0-36。所谓-1行,就是35行,-7行,就是29行。Y=5,H=29-5=24。计算完毕。
回复

使用道具 举报

发表于 2019-8-11 14:56:07 来自手机 | 显示全部楼层
字符串的颜色使用64位表示法。高32位是背景色,低32位是前景色。你好像习惯使用最古老的方法,颜色用4位色彩的命名法,选中使用反色。若加载背景图,菜单可使用透明背景。

点评

原来是这样,64位表示法是什么意思?求您科普一下。。。  详情 回复 发表于 2019-8-11 17:53
回复

使用道具 举报

 楼主| 发表于 2019-8-11 17:53:44 | 显示全部楼层
2011yaya2007777 发表于 2019-8-11 14:56
字符串的颜色使用64位表示法。高32位是背景色,低32位是前景色。你好像习惯使用最古老的方法,颜色用4位色 ...

原来是这样,64位表示法是什么意思?求您科普一下。。。
回复

使用道具 举报

发表于 2019-8-11 18:02:38 来自手机 | 显示全部楼层
0x00rrggbb00rrggbb         8字节,64位。1字节有8位。1位表示2进制数,0或1。

点评

有一个问题 setmenu --string=0=0=0xAAAAAA="date&time=Time: yyyy/MM/dd hh:mm:ss AP"(假设现在2019/8/21 12:41:00 AM) 会显示"Time: 2019/8/21 12:41:00 AM",而"Time: "用别的字符串替换则显示"2019/8/21 12:4  详情 回复 发表于 2019-8-21 12:43

评分

参与人数 1无忧币 +5 收起 理由
dsfgamesky + 5 赞一个!

查看全部评分

回复

使用道具 举报

 楼主| 发表于 2019-8-21 12:43:39 | 显示全部楼层
2011yaya2007777 发表于 2019-8-11 18:02
0x00rrggbb00rrggbb         8字节,64位。1字节有8位。1位表示2进制数,0或1。

有一个问题
setmenu --string=0=0=0xAAAAAA="date&time=Time: yyyy/MM/dd hh:mm:ss AP"(假设现在2019/8/21 12:41:00 AM)
会显示"Time: 2019/8/21 12:41:00 AM",而"Time: "用别的字符串替换则显示"2019/8/21 12:41:00 AM"
这是bug吗?
回复

使用道具 举报

发表于 2019-8-21 12:50:59 来自手机 | 显示全部楼层
字符串里不能使用关键字。如:date,time,yyyy等等。区分大小写。

点评

是这样的 setmenu --string=0=0=0xAAAAAA="date&time=Qw12F: yyyy/MM/dd hh:mm:ss AP" 还是假设现在2019/8/21 12:41:00 AM 那么,会显示"Qw12F: 2019/8/21 12:41:00 AM" 将"Qw12F: "替换为中文或日文、韩文则不  详情 回复 发表于 2019-8-21 12:54
回复

使用道具 举报

 楼主| 发表于 2019-8-21 12:54:30 | 显示全部楼层
本帖最后由 dsfgamesky 于 2019-8-21 12:58 编辑
2011yaya2007777 发表于 2019-8-21 12:50
字符串里不能使用关键字。如:date,time,yyyy等等。区分大小写。


是这样的
setmenu --string=0=0=0xAAAAAA="date&time=Qw12F: yyyy/MM/dd hh:mm:ss AP"
还是假设现在2019/8/21 12:41:00 AM
那么,会显示"Qw12F: 2019/8/21 12:41:00 AM"
将"Qw12F: "替换为中文或日文、韩文之类的则不会显示

点评

setmenu --string=0=0=0xAAAAAA="date&time=yyyy年MM月dd日 hh:mm:ss AP" ”年月日“3字不会显示,为什么非得去除这3个字符呢?  详情 回复 发表于 2019-8-21 13:08
好像将"Qw12F: "替换为除了英文字母和英文符号的都不会显示  详情 回复 发表于 2019-8-21 12:59
回复

使用道具 举报

 楼主| 发表于 2019-8-21 12:59:59 | 显示全部楼层
dsfgamesky 发表于 2019-8-21 12:54
是这样的
setmenu --string=0=0=0xAAAAAA="date&time=Qw12F: yyyy/MM/dd hh:mm:ss AP"
还是假设现在2 ...

好像将"Qw12F: "替换为除了英文字母和英文符号的都不会显示
回复

使用道具 举报

 楼主| 发表于 2019-8-21 13:08:25 | 显示全部楼层
本帖最后由 dsfgamesky 于 2019-8-21 13:11 编辑
dsfgamesky 发表于 2019-8-21 12:54
是这样的
setmenu --string=0=0=0xAAAAAA="date&time=Qw12F: yyyy/MM/dd hh:mm:ss AP"
还是假设现在2 ...


setmenu --string=0=0=0xAAAAAA="date&time=yyyy年MM月dd日 hh:mm:ss AP"
”年月日“3字不会显示,为什么非得去除这些字符呢?
回复

使用道具 举报

发表于 2019-8-21 13:13:03 来自手机 | 显示全部楼层
对了。这个日期字符串,是特殊处理的,只能显示英文。本来只是用来显示日期时间的,发现不影响英文字母显示,多了一个预想外的功能。那就利用他吧。但是不要奢求其他了。因为我要的动态显示日期时间的目标已经实现了。

评分

参与人数 1无忧币 +5 收起 理由
dsfgamesky + 5 赞一个!

查看全部评分

回复

使用道具 举报

 楼主| 发表于 2019-8-22 10:11:31 | 显示全部楼层
2011yaya2007777 发表于 2019-8-21 13:13
对了。这个日期字符串,是特殊处理的,只能显示英文。本来只是用来显示日期时间的,发现不影响英文字母显示 ...

还有个问题
checktime * * * 2-5 * && set season=Spring
checktime * * * 6-8 * && set season=Summer
checktime * * * 9-11 * && set season=Autumn
checktime * * * 12-2 * && set season=Winter
蓝色的这段当日期是1月时将不会执行,能不能改一下?
回复

使用道具 举报

 楼主| 发表于 2019-8-22 10:11:34 | 显示全部楼层
2011yaya2007777 发表于 2019-8-21 13:13
对了。这个日期字符串,是特殊处理的,只能显示英文。本来只是用来显示日期时间的,发现不影响英文字母显示 ...

还有个问题
checktime * * * 2-5 * && set season=Spring
checktime * * * 6-8 * && set season=Summer
checktime * * * 9-11 * && set season=Autumn
checktime * * * 12-2 * && set season=Winter
蓝色的这段当日期是1月时将不会执行,能不能改一下?
回复

使用道具 举报

 楼主| 发表于 2019-8-22 10:12:04 | 显示全部楼层
2011yaya2007777 发表于 2019-8-21 13:13
对了。这个日期字符串,是特殊处理的,只能显示英文。本来只是用来显示日期时间的,发现不影响英文字母显示 ...

还有个问题
checktime * * * 2-5 * && set season=Spring
checktime * * * 6-8 * && set season=Summer
checktime * * * 9-11 * && set season=Autumn
checktime * * * 12-2 * && set season=Winter
蓝色的这段当日期是1月时将不会执行,能不能改一下?
回复

使用道具 举报

 楼主| 发表于 2019-8-22 10:12:11 | 显示全部楼层
2011yaya2007777 发表于 2019-8-21 13:13
对了。这个日期字符串,是特殊处理的,只能显示英文。本来只是用来显示日期时间的,发现不影响英文字母显示 ...

还有个问题
checktime * * * 2-5 * && set season=Spring
checktime * * * 6-8 * && set season=Summer
checktime * * * 9-11 * && set season=Autumn
checktime * * * 12-2 * && set season=Winter
蓝色的这段当日期是1月时将不会执行,能不能改一下?
回复

使用道具 举报

 楼主| 发表于 2019-8-22 10:12:11 | 显示全部楼层
2011yaya2007777 发表于 2019-8-21 13:13
对了。这个日期字符串,是特殊处理的,只能显示英文。本来只是用来显示日期时间的,发现不影响英文字母显示 ...

还有个问题
checktime * * * 2-5 * && set season=Spring
checktime * * * 6-8 * && set season=Summer
checktime * * * 9-11 * && set season=Autumn
checktime * * * 12-2 * && set season=Winter
蓝色的这段当日期是1月时将不会执行,能不能改一下?
回复

使用道具 举报

 楼主| 发表于 2019-8-22 10:12:11 | 显示全部楼层
2011yaya2007777 发表于 2019-8-21 13:13
对了。这个日期字符串,是特殊处理的,只能显示英文。本来只是用来显示日期时间的,发现不影响英文字母显示 ...

还有个问题
checktime * * * 2-5 * && set season=Spring
checktime * * * 6-8 * && set season=Summer
checktime * * * 9-11 * && set season=Autumn
checktime * * * 12-2 * && set season=Winter
蓝色的这段当日期是1月时将不会执行,能不能改一下?
回复

使用道具 举报

 楼主| 发表于 2019-8-22 10:12:11 | 显示全部楼层
本帖最后由 dsfgamesky 于 2019-8-22 10:13 编辑
2011yaya2007777 发表于 2019-8-21 13:13
对了。这个日期字符串,是特殊处理的,只能显示英文。本来只是用来显示日期时间的,发现不影响英文字母显示 ...


12月也是
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-4-19 08:38

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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