Font字体的问题!

murphy008 2004-12-06 06:51:30
J2ME开发,Canvas下用paint(Graphics g), g.setFont(),g.drawString()后。运行时经常出现:屏幕上不出现修改后的字符串,我遇到这种问题的方法是把代码修改一点(不改变代码的实现功能),运行->正常,再运行->可能又出现老问题!
请问,这种情况正常吗?有什么好的方法解决或避免?

代码段COPY不上来,出现乱码,可以写段小程序测试!例如:class Mycanvas extends Canvas{}
希望帮忙!谢!

汣獡⁳祍慣癮獡攠瑸湥獤䌠湡慶
...全文
291 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
murphy008 2004-12-16
  • 打赏
  • 举报
回复
事实证明的确是虚拟机的问题,算了,这个问题结了!
Spectrum 2004-12-16
  • 打赏
  • 举报
回复
Ps 偶做虛擬幾開發的,也是個菜鳥 -_-bb
你定義的一些字符,通過java調用底層的虛擬幾的native程序,如果native裡面傳遞參數出錯了,那麼回傳顯示出來的就會有問題.
歸根到底,是虛擬幾不穩定
Spectrum 2004-12-16
  • 打赏
  • 举报
回复
哈哈,剛解決這個問題,是虛擬幾本身再內碼轉換的時候出錯的,因為比如說,BIG5->unicode的時候,因為虛擬幾native中有個l18的文件夾.裡面存放了支持字體的c程序,可能是內碼轉換的時候出現了錯誤,比如 A7,71是個你字,如果你改動了或者虛擬幾本身不支持這樣的轉換,出來的就是亂碼
換個虛擬幾,看看呢
batfree 2004-12-11
  • 打赏
  • 举报
回复
可能是因为不支持字体吧,毕竟手机所能够支持的字体有限。如果只在模拟器上试过,再到手机上试一试。
murphy008 2004-12-11
  • 打赏
  • 举报
回复
没人能解决实质问题吗?万一不行就结了,我自己慢慢琢磨吧!
njonline 2004-12-09
  • 打赏
  • 举报
回复
我也遇到同样的问题。
我用Canvas做的主画面,要实现被选中的菜单字体变大,颜色也改变,用了g.setFont(),g.drawString(),g.setColor()方法,在模拟器上运行选择菜单时,字体的颜色可以发生变化,但大小却和原来一样,郁闷~
murphy008 2004-12-09
  • 打赏
  • 举报
回复
“修改后的字符串”指:在代码文件中随便修改一个不影响代码运行结果的地方,比如:加一个空白行、对某行代码退格等等,反正就是要改动一点点,然后保存再运行,问题就有可能发生或者解决!

我已经纳闷了好久了,但是很少人注意这点!很奇怪哦~~~~
murphy008 2004-12-09
  • 打赏
  • 举报
回复
对!!!!!
sea2000cn 2004-12-09
  • 打赏
  • 举报
回复
是指重新编译之后吗?
prok 2004-12-07
  • 打赏
  • 举报
回复
不要太相信模拟器。
sy5591 2004-12-07
  • 打赏
  • 举报
回复
不要当真 有些手机会忽略 你所修改的字体

在模拟器上能实现的 在真机上不一定就能实现
flyingghost 2004-12-07
  • 打赏
  • 举报
回复
我不大清楚你描述的问题,“修改后的字符串”指修改了什么东西后?
1 有可能是模拟器的原因。
2 因为你说改改代码说不定会正常,我猜也许是代码没有刷新,编译、运行的class文件还是老版本。编译前刷新整个工程试试。
batfree 2004-12-06
  • 打赏
  • 举报
回复
清屏了吗?不是很清楚。可能模拟器的问题吧。你在真机上试一试。

13,100

社区成员

发帖
与我相关
我的任务
社区描述
Java J2ME
社区管理员
  • J2ME社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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