怎么使用uicode来实现Delphi程序在英文系统中的正确显示

littlewinds 2009-02-13 11:05:52
如题!
我做了个固件升级工具,现在在windows7里面使用就由问题了。button上的中文字都显示为 ??,而Edit里的Text则可以正确显示。如果改进。
我看见好多人都碰到这个问题,又有高手说使用unicode,但怎么使用呢?
或者说,有其他什么方法可以解决吗?
...全文
109 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
fangsp 2009-02-13
  • 打赏
  • 举报
回复
你把String类型 改为 WideString类型试一下
littlewinds 2009-02-13
  • 打赏
  • 举报
回复
我用的是Delphi7,bitbutton上图片能显示正常后面字就会是 ??
zshsuming 2009-02-13
  • 打赏
  • 举报
回复
同意上面的``
luxuewei5214 2009-02-13
  • 打赏
  • 举报
回复
把按钮都换成图片好了,又美观又不会出现乱码
starluck 2009-02-13
  • 打赏
  • 举报
回复
2009前的版本嘗試去盒子裏下載TNT系統的組件解決
starluck 2009-02-13
  • 打赏
  • 举报
回复
用的DELPHI哪一個版本?
Seamour 2009-02-13
  • 打赏
  • 举报
回复
TntWare是一套很有历史的unicode版vcl控件,本来一直是免费的,后来被tms公司收购了,它的最后一个免费版是2.3
http://www.2ccc.com/article.asp?articleid=4408
它带的控件和delphi自带的控件几乎可以一一对应,没有什么其它的额外控件,但有些控件组开发unicode版控件的时候都会和tnt系列控件有关

关于unicode和win32的code page机制的文章在网上也有很多,vcl本身用的都是ansi版的api。简单来说,在win2k之后的系统中,ansi版本的api要先被翻译成unicode版本的;而采用哪种编码(如gb2312、big5)翻译成unicode,是由本机设置的locale id决定的。这个选项在控制面板中,区域和语言选项->高级,“非unicode程序的语言”中设置。否则当非locale id设的不是gb18030的话,以gb18030字符集保存的字符就没法被正确转化成程序使用的文字
如果想开发国际化的程序的话,用unicode是个非常不错的选择。如果你一点儿都不想去了解,只想让人“把具体步骤写出来”,那只能说装tnt系列控件吧,不过该遇到问题还是会遇到问题,tnt没法替你解决一切
littlewinds 2009-02-13
  • 打赏
  • 举报
回复
哎!大家不要只说一个大概的东西撒!我是菜鸟,最好是吧具体执行步骤写出来嘛。就算是帮帮我这菜鸟啦~
littlewinds 2009-02-13
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 ahjoe 的回复:]
1. 用unicode显示出来老外就能读懂吗,
2. 建议检测系统语言,如果非中文就显示英文界面。
[/Quote]
检测系统语言,把project-option-version info里的Locale ID改成英文???
这样就可以在window7里正常显示了?
ahjoe 2009-02-13
  • 打赏
  • 举报
回复
1. 用unicode显示出来老外就能读懂吗,
2. 建议检测系统语言,如果非中文就显示英文界面。
yc_8301 2009-02-13
  • 打赏
  • 举报
回复
支持 3楼,使用图片代替。。
另,可以使用API转换一下 MultiByteToWideChar

5,388

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧