Character encoding OpenEdge 10.2A-是否可以在浏览窗口中显示DOS字符(Chr(219)和#x2588;)?
在一些浏览器中,我们希望使用旧dos字符chr(219)█ 以创建类似进度条或条形图的字段 我们的代码和数据库使用代码页-1254 设置一 我们已尝试将字段值创建为:Character encoding OpenEdge 10.2A-是否可以在浏览窗口中显示DOS字符(Chr(219)和#x2588;)?,character-encoding,openedge,progress-4gl,Character Encoding,Openedge,Progress 4gl,在一些浏览器中,我们希望使用旧dos字符chr(219)█ 以创建类似进度条或条形图的字段 我们的代码和数据库使用代码页-1254 设置一 我们已尝试将字段值创建为: myTable.myValue=fill(chr(219,"IBM857","1254"),100). myTable.myValue=fill(chr(219,"IBM857","1254"),100). myTable.myValue=fill(chr(219,"IBM857","1254"),100). myTable
myTable.myValue=fill(chr(219,"IBM857","1254"),100).
myTable.myValue=fill(chr(219,"IBM857","1254"),100).
myTable.myValue=fill(chr(219,"IBM857","1254"),100).
myTable.myValue=fill(chr(219,"IBM857"),100).
myTable.myValue=fill(chr(219,"IBM857"),100).
myTable.myValue=fill(chr(219,"IBM857")),100).
我们还将启动参数用作:
-cpinternal IBM857
-cprcodein 1254 -cpinternal IBM857
-cprcodein 1254
-cpinternal IBM857
-cprcodein 1254 -cpinternal IBM857
-cprcodein 1254
结果是:
ÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛ
ÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛ
êêêêêêêêêêêêêêêêêêêêêêêêêêêêêêêêêê
场景二
我们已尝试将字段值创建为:
myTable.myValue=fill(chr(219,"IBM857","1254"),100).
myTable.myValue=fill(chr(219,"IBM857","1254"),100).
myTable.myValue=fill(chr(219,"IBM857","1254"),100).
myTable.myValue=fill(chr(219,"IBM857"),100).
myTable.myValue=fill(chr(219,"IBM857"),100).
myTable.myValue=fill(chr(219,"IBM857")),100).
我们还将启动参数用作:
-cpinternal IBM857
-cprcodein 1254 -cpinternal IBM857
-cprcodein 1254
-cpinternal IBM857
-cprcodein 1254 -cpinternal IBM857
-cprcodein 1254
结果是:
ÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛ
ÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛ
êêêêêêêêêêêêêêêêêêêêêêêêêêêêêêêêêê
场景三
我们已尝试将字段值创建为:
myTable.myValue=fill(chr(219,"IBM857","1254"),100).
myTable.myValue=fill(chr(219,"IBM857","1254"),100).
myTable.myValue=fill(chr(219,"IBM857","1254"),100).
myTable.myValue=fill(chr(219,"IBM857"),100).
myTable.myValue=fill(chr(219,"IBM857"),100).
myTable.myValue=fill(chr(219,"IBM857")),100).
我们还将启动参数用作:
-cpinternal IBM857
-cprcodein 1254 -cpinternal IBM857
-cprcodein 1254
-cpinternal IBM857
-cprcodein 1254 -cpinternal IBM857
-cprcodein 1254
结果是:
ÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛ
ÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛ
êêêêêêêêêêêêêêêêêêêêêêêêêêêêêêêêêê
设置四
我们已尝试将字段值创建为:
myTable.myValue=fill(chr(219,"IBM857","1254"),100).
myTable.myValue=fill(chr(219,"IBM857","1254"),100).
myTable.myValue=fill(chr(219,"IBM857","1254"),100).
myTable.myValue=fill(chr(219,"IBM857"),100).
myTable.myValue=fill(chr(219,"IBM857"),100).
myTable.myValue=fill(chr(219,"IBM857")),100).
我们还将启动参数用作:
-cpinternal IBM857
-cprcodein 1254 -cpinternal IBM857
-cprcodein 1254
-cpinternal IBM857
-cprcodein 1254 -cpinternal IBM857
-cprcodein 1254
结果是:
››››››››››››››››››››››››
设置V
我们已尝试将字段值创建为:
myTable.myValue=fill(chr(219,"IBM857","1254"),100).
myTable.myValue=fill(chr(219,"IBM857","1254"),100).
myTable.myValue=fill(chr(219,"IBM857","1254"),100).
myTable.myValue=fill(chr(219,"IBM857"),100).
myTable.myValue=fill(chr(219,"IBM857"),100).
myTable.myValue=fill(chr(219,"IBM857")),100).
我们还将启动参数用作:
-cpinternal IBM857
-cprcodein 1254 -cpinternal IBM857
-cprcodein 1254
-cpinternal IBM857
-cprcodein 1254 -cpinternal IBM857
-cprcodein 1254
结果是:
››››››››››››››››››››››››
设置六
我们已尝试将字段值创建为:
myTable.myValue=fill(chr(219,"IBM857","1254"),100).
myTable.myValue=fill(chr(219,"IBM857","1254"),100).
myTable.myValue=fill(chr(219,"IBM857","1254"),100).
myTable.myValue=fill(chr(219,"IBM857"),100).
myTable.myValue=fill(chr(219,"IBM857"),100).
myTable.myValue=fill(chr(219,"IBM857")),100).
我们还将启动参数用作:
-cpinternal IBM857
-cprcodein 1254 -cpinternal IBM857
-cprcodein 1254
-cpinternal IBM857
-cprcodein 1254 -cpinternal IBM857
-cprcodein 1254
结果是:
徖徖徖徖徖徖徖徖徖徖徖徖徖
因此
我们希望产生如下输出:
██████████████████████████████████████ 1254是土耳其语,不包含您试图显示的字符 您可以尝试设置-cpterm,但我认为它只适用于字符终端输出(_progres.exe),因此它可能无法帮助您使用Windows GUI(_prowin.exe)程序 另一种可能性是-cpstream并使用stream io定义显示帧
否则,我认为最好的选择是将数据库转换为UTF-8,并使用该环境中可用的字符。从长远来看,这当然是一个更加稳健的解决方案。为了创建进度条或条形图,我建议使用矩形。 您可以动态创建它们,动态设置它们的外观、位置和大小等。 您还可以创建垂直条,这是使用填充无法获得的。 请参见创建矩形或矩形指定
在过去,我用管道制作进度条(不需要找到任何奇怪的字符),使用粗体字体,这样效果就不会太差,比如说,如果只需要显示这些字符,您可以将数据库和-cprcodein保留为其当前值,只将-cpinternal设置为UTF-8。
可能需要对应用程序进行一些返工,具体取决于它的书写方式。由于我无法使用-cpinternal,-cprcodein等来显示dos字符,因此作为一种解决方法,我创建了一种新字体,并将特定字段的一些未使用字符(即,`^)更改为不同的字体厚度█ 为了用于不同的情况。我确实使用矩形来生成进度条,但我需要在浏览字段中显示进度条。我尝试过管道字符(|),但它似乎不够好:)当我将-cpinternal与UTF-8一起使用时,它会产生“代码页UTF-8的排序规则表,并且在convmap.cp.(1043)中找不到排序规则名称TURKISH”错误。我原以为既然IBM857字符集中似乎有dos字符,我可以使用一些参数来显示它们。不幸的是我做不到。作为解决方案,我创建了自己的字体:)